Subject: [PATCH] Built motion from commit (unavailable).|2.5.3

From: Cris Di Sclafani <[email-masked]>
Date: Wed, 16 Sep 2020 10:49:52 +0200

---
 apidoc/api_data.js                                 |38664 +-------------------
 apidoc/api_data.json                               |38664 +-------------------
 apidoc/api_project.js                              |   25 +-
 apidoc/api_project.json                            |   25 +-
 apidoc/css/style.css                               |   62 +-
 apidoc/fonts/glyphicons-halflings-regular.eot      |  Bin 20127 -> 20127 bytes
 apidoc/fonts/glyphicons-halflings-regular.ttf      |  Bin 45404 -> 45404 bytes
 apidoc/fonts/glyphicons-halflings-regular.woff     |  Bin 23424 -> 23424 bytes
 apidoc/fonts/glyphicons-halflings-regular.woff2    |  Bin 18028 -> 18028 bytes
 apidoc/img/favicon.ico                             |  Bin 894 -> 894 bytes
 apidoc/index.html                                  |   37 +-
 apidoc/main.js                                     |  105 +-
 apidoc/utils/handlebars_helper.js                  |   21 +-
 apidoc/utils/send_sample_request.js                |   49 +-
 apidoc/utils/send_sample_request_utils.js          |   86 -
 apidoc/vendor/handlebars.min.js                    |   14 +-
 apidoc/vendor/lodash.custom.min.js                 |   68 +-
 apidoc/vendor/prettify.css                         |   51 +
 apidoc/vendor/prettify/lang-Splus.js               |   18 +
 apidoc/vendor/prettify/lang-aea.js                 |   18 +
 apidoc/vendor/prettify/lang-agc.js                 |   18 +
 apidoc/vendor/prettify/lang-apollo.js              |   18 +
 apidoc/vendor/prettify/lang-basic.js               |   18 +
 apidoc/vendor/prettify/lang-cbm.js                 |   18 +
 apidoc/vendor/prettify/lang-cl.js                  |   18 +
 apidoc/vendor/prettify/lang-clj.js                 |   17 +
 apidoc/vendor/prettify/lang-css.js                 |   18 +
 apidoc/vendor/prettify/lang-dart.js                |   19 +
 apidoc/vendor/prettify/lang-el.js                  |   18 +
 apidoc/vendor/prettify/lang-erl.js                 |   18 +
 apidoc/vendor/prettify/lang-erlang.js              |   18 +
 apidoc/vendor/prettify/lang-fs.js                  |   18 +
 apidoc/vendor/prettify/lang-go.js                  |   17 +
 apidoc/vendor/prettify/lang-hs.js                  |   18 +
 apidoc/vendor/prettify/lang-lasso.js               |   19 +
 apidoc/vendor/prettify/lang-lassoscript.js         |   19 +
 apidoc/vendor/prettify/lang-latex.js               |   17 +
 apidoc/vendor/prettify/lang-lgt.js                 |   18 +
 apidoc/vendor/prettify/lang-lisp.js                |   18 +
 apidoc/vendor/prettify/lang-ll.js                  |   17 +
 apidoc/vendor/prettify/lang-llvm.js                |   17 +
 apidoc/vendor/prettify/lang-logtalk.js             |   18 +
 apidoc/vendor/prettify/lang-ls.js                  |   19 +
 apidoc/vendor/prettify/lang-lsp.js                 |   18 +
 apidoc/vendor/prettify/lang-lua.js                 |   18 +
 apidoc/vendor/prettify/lang-matlab.js              |   29 +
 apidoc/vendor/prettify/lang-ml.js                  |   18 +
 apidoc/vendor/prettify/lang-mumps.js               |   18 +
 apidoc/vendor/prettify/lang-n.js                   |   19 +
 apidoc/vendor/prettify/lang-nemerle.js             |   19 +
 apidoc/vendor/prettify/lang-pascal.js              |   18 +
 apidoc/vendor/prettify/lang-proto.js               |   17 +
 apidoc/vendor/prettify/lang-r.js                   |   18 +
 apidoc/vendor/prettify/lang-rd.js                  |   17 +
 apidoc/vendor/prettify/lang-rkt.js                 |   18 +
 apidoc/vendor/prettify/lang-rust.js                |   20 +
 apidoc/vendor/prettify/lang-s.js                   |   18 +
 apidoc/vendor/prettify/lang-scala.js               |   18 +
 apidoc/vendor/prettify/lang-scm.js                 |   18 +
 apidoc/vendor/prettify/lang-sql.js                 |   18 +
 apidoc/vendor/prettify/lang-ss.js                  |   18 +
 apidoc/vendor/prettify/lang-swift.js               |   16 +
 apidoc/vendor/prettify/lang-tcl.js                 |   18 +
 apidoc/vendor/prettify/lang-tex.js                 |   17 +
 apidoc/vendor/prettify/lang-vb.js                  |   19 +
 apidoc/vendor/prettify/lang-vbs.js                 |   19 +
 apidoc/vendor/prettify/lang-vhd.js                 |   19 +
 apidoc/vendor/prettify/lang-vhdl.js                |   19 +
 apidoc/vendor/prettify/lang-wiki.js                |   18 +
 apidoc/vendor/prettify/lang-xq.js                  |   19 +
 apidoc/vendor/prettify/lang-xquery.js              |   19 +
 apidoc/vendor/prettify/lang-yaml.js                |   18 +
 apidoc/vendor/prettify/lang-yml.js                 |   18 +
 apidoc/vendor/prettify/prettify.css                |    1 +
 apidoc/vendor/prettify/prettify.js                 |   46 +
 apidoc/vendor/prettify/run_prettify.js             |   63 +
 apidoc/vendor/prism.css                            |  125 -
 apidoc/vendor/prism.js                             |   21 -
 package.json                                       |    6 +-
 public/index.html                                  |    4 +-
 public/scripts/app.42b5ad22.js                     |   18 -
 public/scripts/app.c5d20425.js                     |    1 +
 public/scripts/vendor.17cdb947.js                  |    1 +
 public/scripts/vendor.4b108999.js                  |  587 -
 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 +-
 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 +-
 .../chatTransferReport.attributes.js               |    2 +-
 .../chatTransferReport.controller.js               |    2 +-
 .../chatTransferReport/chatTransferReport.model.js |    2 +-
 .../chatTransferReport/chatTransferReport.rpc.js   |    2 +-
 server/api/chatTransferReport/index.js             |    2 +-
 server/api/chatWebsite/chatWebsite.attributes.js   |    2 +-
 server/api/chatWebsite/chatWebsite.controller.js   |    2 +-
 server/api/chatWebsite/chatWebsite.events.js       |    2 +-
 server/api/chatWebsite/chatWebsite.model.js        |    2 +-
 server/api/chatWebsite/chatWebsite.rpc.js          |    2 +-
 server/api/chatWebsite/chatWebsite.socket.js       |    2 +-
 server/api/chatWebsite/index.js                    |    2 +-
 .../api/cloudProvider/cloudProvider.attributes.js  |    2 +-
 .../api/cloudProvider/cloudProvider.controller.js  |    2 +-
 server/api/cloudProvider/cloudProvider.model.js    |    2 +-
 server/api/cloudProvider/cloudProvider.rpc.js      |    2 +-
 server/api/cloudProvider/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/disposition/disposition.attributes.js   |    2 +-
 server/api/disposition/disposition.controller.js   |    2 +-
 server/api/disposition/disposition.model.js        |    2 +-
 server/api/disposition/disposition.rpc.js          |    2 +-
 server/api/disposition/index.js                    |    2 +-
 server/api/faxAccount/faxAccount.attributes.js     |    2 +-
 server/api/faxAccount/faxAccount.controller.js     |    2 +-
 server/api/faxAccount/faxAccount.events.js         |    2 +-
 server/api/faxAccount/faxAccount.model.js          |    2 +-
 server/api/faxAccount/faxAccount.rpc.js            |    2 +-
 server/api/faxAccount/faxAccount.socket.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 +-
 .../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 +-
 .../faxTransferReport.attributes.js                |    2 +-
 .../faxTransferReport.controller.js                |    2 +-
 .../faxTransferReport/faxTransferReport.model.js   |    2 +-
 .../api/faxTransferReport/faxTransferReport.rpc.js |    2 +-
 server/api/faxTransferReport/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/intDynamics365Account/index.js          |    2 +-
 .../intDynamics365Account.attributes.js            |    2 +-
 .../intDynamics365Account.controller.js            |    2 +-
 .../intDynamics365Account.model.js                 |    2 +-
 .../intDynamics365Account.rpc.js                   |    2 +-
 server/api/intDynamics365Configuration/index.js    |    2 +-
 .../intDynamics365Configuration.attributes.js      |    2 +-
 .../intDynamics365Configuration.controller.js      |    2 +-
 .../intDynamics365Configuration.model.js           |    2 +-
 .../intDynamics365Configuration.rpc.js             |    2 +-
 server/api/intDynamics365Field/index.js            |    2 +-
 .../intDynamics365Field.attributes.js              |    2 +-
 .../intDynamics365Field.controller.js              |    2 +-
 .../intDynamics365Field.model.js                   |    2 +-
 .../intDynamics365Field/intDynamics365Field.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/intFreshsalesAccount/index.js           |    2 +-
 .../intFreshsalesAccount.attributes.js             |    2 +-
 .../intFreshsalesAccount.controller.js             |    2 +-
 .../intFreshsalesAccount.model.js                  |    2 +-
 .../intFreshsalesAccount.rpc.js                    |    2 +-
 server/api/intFreshsalesConfiguration/index.js     |    2 +-
 .../intFreshsalesConfiguration.attributes.js       |    2 +-
 .../intFreshsalesConfiguration.controller.js       |    2 +-
 .../intFreshsalesConfiguration.model.js            |    2 +-
 .../intFreshsalesConfiguration.rpc.js              |    2 +-
 server/api/intFreshsalesField/index.js             |    2 +-
 .../intFreshsalesField.attributes.js               |    2 +-
 .../intFreshsalesField.controller.js               |    2 +-
 .../intFreshsalesField/intFreshsalesField.model.js |    2 +-
 .../intFreshsalesField/intFreshsalesField.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/intServicenowAccount/index.js           |    2 +-
 .../intServicenowAccount.attributes.js             |    2 +-
 .../intServicenowAccount.controller.js             |    2 +-
 .../intServicenowAccount.model.js                  |    2 +-
 .../intServicenowAccount.rpc.js                    |    2 +-
 server/api/intServicenowConfiguration/index.js     |    2 +-
 .../intServicenowConfiguration.attributes.js       |    2 +-
 .../intServicenowConfiguration.controller.js       |    2 +-
 .../intServicenowConfiguration.model.js            |    2 +-
 .../intServicenowConfiguration.rpc.js              |    2 +-
 server/api/intServicenowField/index.js             |    2 +-
 .../intServicenowField.attributes.js               |    2 +-
 .../intServicenowField.controller.js               |    2 +-
 .../intServicenowField/intServicenowField.model.js |    2 +-
 .../intServicenowField/intServicenowField.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/intVtigerAccount/index.js               |    2 +-
 .../intVtigerAccount.attributes.js                 |    2 +-
 .../intVtigerAccount.controller.js                 |    2 +-
 .../api/intVtigerAccount/intVtigerAccount.model.js |    2 +-
 .../api/intVtigerAccount/intVtigerAccount.rpc.js   |    2 +-
 server/api/intVtigerConfiguration/index.js         |    2 +-
 .../intVtigerConfiguration.attributes.js           |    2 +-
 .../intVtigerConfiguration.controller.js           |    2 +-
 .../intVtigerConfiguration.model.js                |    2 +-
 .../intVtigerConfiguration.rpc.js                  |    2 +-
 server/api/intVtigerField/index.js                 |    2 +-
 .../intVtigerField/intVtigerField.attributes.js    |    2 +-
 .../intVtigerField/intVtigerField.controller.js    |    2 +-
 server/api/intVtigerField/intVtigerField.model.js  |    2 +-
 server/api/intVtigerField/intVtigerField.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.events.js       |    2 +-
 server/api/mailAccount/mailAccount.model.js        |    2 +-
 server/api/mailAccount/mailAccount.rpc.js          |    2 +-
 server/api/mailAccount/mailAccount.socket.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/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                  |    2 +-
 .../api/mailSubstatus/mailSubstatus.attributes.js  |    2 +-
 .../api/mailSubstatus/mailSubstatus.controller.js  |    2 +-
 server/api/mailSubstatus/mailSubstatus.model.js    |    2 +-
 server/api/mailSubstatus/mailSubstatus.rpc.js      |    2 +-
 server/api/mailTransferReport/index.js             |    2 +-
 .../mailTransferReport.attributes.js               |    2 +-
 .../mailTransferReport.controller.js               |    2 +-
 .../mailTransferReport/mailTransferReport.model.js |    2 +-
 .../mailTransferReport/mailTransferReport.rpc.js   |    2 +-
 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/notification/index.js                   |    2 +-
 server/api/notification/notification.attributes.js |    2 +-
 server/api/notification/notification.controller.js |    2 +-
 server/api/notification/notification.events.js     |    2 +-
 server/api/notification/notification.model.js      |    2 +-
 server/api/notification/notification.rpc.js        |    2 +-
 server/api/notification/notification.socket.js     |    2 +-
 server/api/openchannelAccount/index.js             |    2 +-
 .../openchannelAccount.attributes.js               |    2 +-
 .../openchannelAccount.controller.js               |    2 +-
 .../openchannelAccount.events.js                   |    2 +-
 .../openchannelAccount/openchannelAccount.model.js |    2 +-
 .../openchannelAccount/openchannelAccount.rpc.js   |    2 +-
 .../openchannelAccount.socket.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/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/openchannelTransferReport/index.js      |    2 +-
 .../openchannelTransferReport.attributes.js        |    2 +-
 .../openchannelTransferReport.controller.js        |    2 +-
 .../openchannelTransferReport.model.js             |    2 +-
 .../openchannelTransferReport.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/plugin/index.js                         |    2 +-
 server/api/plugin/plugin.attributes.js             |    2 +-
 server/api/plugin/plugin.controller.js             |    2 +-
 server/api/plugin/plugin.events.js                 |    2 +-
 server/api/plugin/plugin.model.js                  |    2 +-
 server/api/plugin/plugin.rpc.js                    |    2 +-
 server/api/plugin/plugin.socket.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/screenRecording/index.js                |    2 +-
 .../screenRecording/screenRecording.attributes.js  |    2 +-
 .../screenRecording/screenRecording.controller.js  |    2 +-
 .../api/screenRecording/screenRecording.model.js   |    2 +-
 server/api/screenRecording/screenRecording.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.events.js         |    2 +-
 server/api/smsAccount/smsAccount.model.js          |    2 +-
 server/api/smsAccount/smsAccount.rpc.js            |    2 +-
 server/api/smsAccount/smsAccount.socket.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/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/smsTransferReport/index.js              |    2 +-
 .../smsTransferReport.attributes.js                |    2 +-
 .../smsTransferReport.controller.js                |    2 +-
 .../smsTransferReport/smsTransferReport.model.js   |    2 +-
 .../api/smsTransferReport/smsTransferReport.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/squareMessage/index.js                  |    2 +-
 .../api/squareMessage/squareMessage.attributes.js  |    2 +-
 .../api/squareMessage/squareMessage.controller.js  |    2 +-
 server/api/squareMessage/squareMessage.model.js    |    2 +-
 server/api/squareMessage/squareMessage.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.events.js   |    2 +-
 server/api/squareProject/squareProject.model.js    |    2 +-
 server/api/squareProject/squareProject.rpc.js      |    2 +-
 server/api/squareProject/squareProject.socket.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/userProfile/index.js                    |    2 +-
 server/api/userProfile/userProfile.attributes.js   |    2 +-
 server/api/userProfile/userProfile.controller.js   |    2 +-
 server/api/userProfile/userProfile.events.js       |    2 +-
 server/api/userProfile/userProfile.model.js        |    2 +-
 server/api/userProfile/userProfile.rpc.js          |    2 +-
 server/api/userProfile/userProfile.socket.js       |    2 +-
 server/api/userProfileResource/index.js            |    2 +-
 .../userProfileResource.attributes.js              |    2 +-
 .../userProfileResource.controller.js              |    2 +-
 .../userProfileResource.model.js                   |    2 +-
 .../userProfileResource/userProfileResource.rpc.js |    2 +-
 server/api/userProfileSection/index.js             |    2 +-
 .../userProfileSection.attributes.js               |    2 +-
 .../userProfileSection.controller.js               |    2 +-
 .../userProfileSection/userProfileSection.model.js |    2 +-
 .../userProfileSection/userProfileSection.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/userWhatsappQueue/index.js              |    2 +-
 .../userWhatsappQueue.attributes.js                |    2 +-
 .../userWhatsappQueue/userWhatsappQueue.model.js   |    2 +-
 .../api/userWhatsappQueue/userWhatsappQueue.rpc.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/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/voicePrefix/index.js                    |    2 +-
 server/api/voicePrefix/voicePrefix.attributes.js   |    2 +-
 server/api/voicePrefix/voicePrefix.controller.js   |    2 +-
 server/api/voicePrefix/voicePrefix.events.js       |    2 +-
 server/api/voicePrefix/voicePrefix.model.js        |    2 +-
 server/api/voicePrefix/voicePrefix.rpc.js          |    2 +-
 server/api/voicePrefix/voicePrefix.socket.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 +-
 .../voiceQueueReport/voiceQueueReport.events.js    |    2 +-
 .../api/voiceQueueReport/voiceQueueReport.model.js |    2 +-
 .../api/voiceQueueReport/voiceQueueReport.rpc.js   |    2 +-
 .../voiceQueueReport/voiceQueueReport.socket.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/api/webbar/index.js                         |    2 +-
 server/api/webbar/webbar.controller.js             |    2 +-
 server/api/whatsappAccount/index.js                |    2 +-
 .../whatsappAccount/whatsappAccount.attributes.js  |    2 +-
 .../whatsappAccount/whatsappAccount.controller.js  |    2 +-
 .../api/whatsappAccount/whatsappAccount.events.js  |    2 +-
 .../api/whatsappAccount/whatsappAccount.model.js   |    2 +-
 server/api/whatsappAccount/whatsappAccount.rpc.js  |    2 +-
 .../api/whatsappAccount/whatsappAccount.socket.js  |    2 +-
 server/api/whatsappApplication/index.js            |    2 +-
 .../whatsappApplication.attributes.js              |    2 +-
 .../whatsappApplication.controller.js              |    2 +-
 .../whatsappApplication.model.js                   |    2 +-
 .../whatsappApplication/whatsappApplication.rpc.js |    2 +-
 server/api/whatsappInteraction/index.js            |    2 +-
 .../whatsappInteraction.attributes.js              |    2 +-
 .../whatsappInteraction.controller.js              |    2 +-
 .../whatsappInteraction.events.js                  |    2 +-
 .../whatsappInteraction.model.js                   |    2 +-
 .../whatsappInteraction/whatsappInteraction.rpc.js |    2 +-
 .../whatsappInteraction.socket.js                  |    2 +-
 server/api/whatsappMessage/index.js                |    2 +-
 .../whatsappMessage/whatsappMessage.attributes.js  |    2 +-
 .../whatsappMessage/whatsappMessage.controller.js  |    2 +-
 .../api/whatsappMessage/whatsappMessage.events.js  |    2 +-
 .../api/whatsappMessage/whatsappMessage.model.js   |    2 +-
 server/api/whatsappMessage/whatsappMessage.rpc.js  |    2 +-
 .../api/whatsappMessage/whatsappMessage.socket.js  |    2 +-
 server/api/whatsappQueue/index.js                  |    2 +-
 .../api/whatsappQueue/whatsappQueue.attributes.js  |    2 +-
 .../api/whatsappQueue/whatsappQueue.controller.js  |    2 +-
 server/api/whatsappQueue/whatsappQueue.events.js   |    2 +-
 server/api/whatsappQueue/whatsappQueue.model.js    |    2 +-
 server/api/whatsappQueue/whatsappQueue.rpc.js      |    2 +-
 server/api/whatsappQueue/whatsappQueue.socket.js   |    2 +-
 server/api/whatsappQueueReport/index.js            |    2 +-
 .../whatsappQueueReport.attributes.js              |    2 +-
 .../whatsappQueueReport.controller.js              |    2 +-
 .../whatsappQueueReport.model.js                   |    2 +-
 .../whatsappQueueReport/whatsappQueueReport.rpc.js |    2 +-
 server/api/whatsappTransferReport/index.js         |    2 +-
 .../whatsappTransferReport.attributes.js           |    2 +-
 .../whatsappTransferReport.controller.js           |    2 +-
 .../whatsappTransferReport.model.js                |    2 +-
 .../whatsappTransferReport.rpc.js                  |    2 +-
 server/app.js                                      |    2 +-
 server/components/auth/service.js                  |    2 +-
 server/components/encryptor/index.js               |    2 +-
 server/components/export/csv.js                    |    2 +-
 server/components/export/pdf.js                    |    2 +-
 server/components/export/xlsx.js                   |    2 +-
 server/components/extensions/rewrite.js            |    2 +-
 server/components/import/cm/csv.js                 |    2 +-
 server/components/import/cm/csv2.js                |    2 +-
 server/components/integrations/configuration.js    |    2 +-
 server/components/interaction/service.js           |    2 +-
 server/components/license/service.js               |    2 +-
 server/components/parsers/advancedSearch.js        |    2 +-
 server/components/parsers/qs.js                    |    2 +-
 server/config/environment/development.js           |    6 +-
 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/chat.js                     |    2 +-
 server/config/schedule/index.js                    |    2 +-
 server/config/schedule/transcribe.js               |    2 +-
 server/config/seedContact.js                       |    2 +-
 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 +-
 .../1598272067460-Auto Generated Inline Image 1    |  Bin 0 -> 15665 bytes
 .../1598272067646-Auto Generated Inline Image 1    |  Bin 0 -> 15665 bytes
 ...ptura de pantalla 2020-08-14 a las 15.53.25.png |  Bin 0 -> 443861 bytes
 ...ptura de pantalla 2020-08-14 a las 15.57.11.png |  Bin 0 -> 266109 bytes
 ...ptura de pantalla 2020-08-25 a las 13.11.05.png |  Bin 0 -> 291579 bytes
 ...ptura de pantalla 2020-08-25 a las 13.11.05.png |  Bin 0 -> 291579 bytes
 ...ptura de pantalla 2020-08-25 a las 13.11.05.png |  Bin 0 -> 291579 bytes
 ...ptura de pantalla 2020-08-25 a las 13.11.05.png |  Bin 0 -> 291579 bytes
 ...241\345\233\276\347\211\207_20200909165537.png" |  Bin 0 -> 207861 bytes
 ...241\345\233\276\347\211\207_20200909165537.png" |  Bin 0 -> 207861 bytes
 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/lex/index.js       |    2 +-
 server/services/agi/scripts/aws/lex/lib/api.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/sestek/index.js        |    2 +-
 server/services/agi/scripts/sestek/nda/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/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/dynamics365Account.js    |    2 +-
 server/services/ami/model/faxAccount.js            |    2 +-
 server/services/ami/model/freshdeskAccount.js      |    2 +-
 server/services/ami/model/freshsalesAccount.js     |    2 +-
 server/services/ami/model/queueReport.js           |    2 +-
 server/services/ami/model/salesforceAccount.js     |    2 +-
 server/services/ami/model/servicenowAccount.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/vtigerAccount.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 +-
 .../services/ami/rpc/integrations/dynamics365.js   |    2 +-
 server/services/ami/rpc/integrations/freshdesk.js  |    2 +-
 server/services/ami/rpc/integrations/freshsales.js |    2 +-
 server/services/ami/rpc/integrations/salesforce.js |    2 +-
 server/services/ami/rpc/integrations/servicenow.js |    2 +-
 server/services/ami/rpc/integrations/sugarcrm.js   |    2 +-
 server/services/ami/rpc/integrations/vtiger.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/cmContact/index.js     |    2 +-
 server/services/ami/trigger/index.js               |    2 +-
 server/services/ami/trigger/integration/desk.js    |    2 +-
 .../ami/trigger/integration/dynamics365.js         |    2 +-
 .../services/ami/trigger/integration/freshdesk.js  |    2 +-
 .../services/ami/trigger/integration/freshsales.js |    2 +-
 server/services/ami/trigger/integration/index.js   |    2 +-
 .../services/ami/trigger/integration/salesforce.js |    2 +-
 .../services/ami/trigger/integration/servicenow.js |    2 +-
 .../services/ami/trigger/integration/sugarcrm.js   |    2 +-
 server/services/ami/trigger/integration/util.js    |    2 +-
 server/services/ami/trigger/integration/vtiger.js  |    2 +-
 server/services/ami/trigger/integration/zendesk.js |    2 +-
 server/services/ami/trigger/integration/zoho.js    |    2 +-
 server/services/ami/trigger/script/index.js        |    2 +-
 server/services/ami/trigger/urlforward/index.js    |    2 +-
 server/services/dump.rdb                           |  Bin 0 -> 92 bytes
 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/model/whatsappQueue.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 +-
 server/services/routing/rpc/whatsappInteraction.js |    2 +-
 server/services/routing/rpc/whatsappMessage.js     |    2 +-
 server/services/routing/rpc/whatsappQueue.js       |    2 +-
 server/services/routing/rpc/whatsappQueueReport.js |    2 +-
 .../services/routing/server/applications/agent.js  |    2 +-
 .../routing/server/applications/amazonlex.js       |    2 +-
 .../routing/server/applications/autoreply.js       |    2 +-
 .../services/routing/server/applications/close.js  |    2 +-
 .../routing/server/applications/dialogflow.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/system.js |    2 +-
 server/services/routing/server/applications/tag.js |    2 +-
 .../services/routing/server/applications/utils.js  |    2 +-
 server/services/routing/server/index.js            |    2 +-
 server/services/routing/server/interval.js         |    2 +-
 server/services/xdr/agents.controller.js           |    2 +-
 server/services/xdr/calls.controller.js            |    2 +-
 server/services/xdr/core.controller.js             |    2 +-
 server/services/xdr/dials.controller.js            |    2 +-
 server/services/xdr/index.js                       |    2 +-
 server/services/xdr/members.controller.js          |    2 +-
 server/services/xdr/queues.controller.js           |    2 +-
 server/services/xdr/recordings.controller.js       |    2 +-
 server/services/xdr/transfers.controller.js        |    2 +-
 server/services/xdr/utils.js                       |    2 +-
 1231 files changed, 2485 insertions(+), 79540 deletions(-)
 mode change 100644 => 100755 apidoc/css/style.css
 mode change 100644 => 100755 apidoc/fonts/glyphicons-halflings-regular.eot
 mode change 100644 => 100755 apidoc/fonts/glyphicons-halflings-regular.svg
 mode change 100644 => 100755 apidoc/fonts/glyphicons-halflings-regular.ttf
 mode change 100644 => 100755 apidoc/fonts/glyphicons-halflings-regular.woff
 mode change 100644 => 100755 apidoc/fonts/glyphicons-halflings-regular.woff2
 mode change 100644 => 100755 apidoc/img/favicon.ico
 mode change 100644 => 100755 apidoc/index.html
 mode change 100644 => 100755 apidoc/locales/ca.js
 mode change 100644 => 100755 apidoc/locales/cs.js
 mode change 100644 => 100755 apidoc/locales/de.js
 mode change 100644 => 100755 apidoc/locales/es.js
 mode change 100644 => 100755 apidoc/locales/fr.js
 mode change 100644 => 100755 apidoc/locales/it.js
 mode change 100644 => 100755 apidoc/locales/locale.js
 mode change 100644 => 100755 apidoc/locales/nl.js
 mode change 100644 => 100755 apidoc/locales/pl.js
 mode change 100644 => 100755 apidoc/locales/pt_br.js
 mode change 100644 => 100755 apidoc/locales/ro.js
 mode change 100644 => 100755 apidoc/locales/ru.js
 mode change 100644 => 100755 apidoc/locales/tr.js
 mode change 100644 => 100755 apidoc/locales/vi.js
 mode change 100644 => 100755 apidoc/locales/zh.js
 mode change 100644 => 100755 apidoc/locales/zh_cn.js
 mode change 100644 => 100755 apidoc/main.js
 mode change 100644 => 100755 apidoc/utils/handlebars_helper.js
 delete mode 100755 apidoc/utils/send_sample_request_utils.js
 mode change 100644 => 100755 apidoc/vendor/bootstrap.min.css
 mode change 100644 => 100755 apidoc/vendor/bootstrap.min.js
 mode change 100644 => 100755 apidoc/vendor/diff_match_patch.min.js
 mode change 100644 => 100755 apidoc/vendor/handlebars.min.js
 mode change 100644 => 100755 apidoc/vendor/jquery.min.js
 mode change 100644 => 100755 apidoc/vendor/list.min.js
 mode change 100644 => 100755 apidoc/vendor/lodash.custom.min.js
 mode change 100644 => 100755 apidoc/vendor/path-to-regexp/LICENSE
 mode change 100644 => 100755 apidoc/vendor/path-to-regexp/index.js
 mode change 100644 => 100755 apidoc/vendor/polyfill.js
 create mode 100755 apidoc/vendor/prettify.css
 create mode 100755 apidoc/vendor/prettify/lang-Splus.js
 create mode 100755 apidoc/vendor/prettify/lang-aea.js
 create mode 100755 apidoc/vendor/prettify/lang-agc.js
 create mode 100755 apidoc/vendor/prettify/lang-apollo.js
 create mode 100755 apidoc/vendor/prettify/lang-basic.js
 create mode 100755 apidoc/vendor/prettify/lang-cbm.js
 create mode 100755 apidoc/vendor/prettify/lang-cl.js
 create mode 100755 apidoc/vendor/prettify/lang-clj.js
 create mode 100755 apidoc/vendor/prettify/lang-css.js
 create mode 100755 apidoc/vendor/prettify/lang-dart.js
 create mode 100755 apidoc/vendor/prettify/lang-el.js
 create mode 100755 apidoc/vendor/prettify/lang-erl.js
 create mode 100755 apidoc/vendor/prettify/lang-erlang.js
 create mode 100755 apidoc/vendor/prettify/lang-fs.js
 create mode 100755 apidoc/vendor/prettify/lang-go.js
 create mode 100755 apidoc/vendor/prettify/lang-hs.js
 create mode 100755 apidoc/vendor/prettify/lang-lasso.js
 create mode 100755 apidoc/vendor/prettify/lang-lassoscript.js
 create mode 100755 apidoc/vendor/prettify/lang-latex.js
 create mode 100755 apidoc/vendor/prettify/lang-lgt.js
 create mode 100755 apidoc/vendor/prettify/lang-lisp.js
 create mode 100755 apidoc/vendor/prettify/lang-ll.js
 create mode 100755 apidoc/vendor/prettify/lang-llvm.js
 create mode 100755 apidoc/vendor/prettify/lang-logtalk.js
 create mode 100755 apidoc/vendor/prettify/lang-ls.js
 create mode 100755 apidoc/vendor/prettify/lang-lsp.js
 create mode 100755 apidoc/vendor/prettify/lang-lua.js
 create mode 100755 apidoc/vendor/prettify/lang-matlab.js
 create mode 100755 apidoc/vendor/prettify/lang-ml.js
 create mode 100755 apidoc/vendor/prettify/lang-mumps.js
 create mode 100755 apidoc/vendor/prettify/lang-n.js
 create mode 100755 apidoc/vendor/prettify/lang-nemerle.js
 create mode 100755 apidoc/vendor/prettify/lang-pascal.js
 create mode 100755 apidoc/vendor/prettify/lang-proto.js
 create mode 100755 apidoc/vendor/prettify/lang-r.js
 create mode 100755 apidoc/vendor/prettify/lang-rd.js
 create mode 100755 apidoc/vendor/prettify/lang-rkt.js
 create mode 100755 apidoc/vendor/prettify/lang-rust.js
 create mode 100755 apidoc/vendor/prettify/lang-s.js
 create mode 100755 apidoc/vendor/prettify/lang-scala.js
 create mode 100755 apidoc/vendor/prettify/lang-scm.js
 create mode 100755 apidoc/vendor/prettify/lang-sql.js
 create mode 100755 apidoc/vendor/prettify/lang-ss.js
 create mode 100755 apidoc/vendor/prettify/lang-swift.js
 create mode 100755 apidoc/vendor/prettify/lang-tcl.js
 create mode 100755 apidoc/vendor/prettify/lang-tex.js
 create mode 100755 apidoc/vendor/prettify/lang-vb.js
 create mode 100755 apidoc/vendor/prettify/lang-vbs.js
 create mode 100755 apidoc/vendor/prettify/lang-vhd.js
 create mode 100755 apidoc/vendor/prettify/lang-vhdl.js
 create mode 100755 apidoc/vendor/prettify/lang-wiki.js
 create mode 100755 apidoc/vendor/prettify/lang-xq.js
 create mode 100755 apidoc/vendor/prettify/lang-xquery.js
 create mode 100755 apidoc/vendor/prettify/lang-yaml.js
 create mode 100755 apidoc/vendor/prettify/lang-yml.js
 create mode 100755 apidoc/vendor/prettify/prettify.css
 create mode 100755 apidoc/vendor/prettify/prettify.js
 create mode 100755 apidoc/vendor/prettify/run_prettify.js
 delete mode 100644 apidoc/vendor/prism.css
 delete mode 100644 apidoc/vendor/prism.js
 mode change 100644 => 100755 apidoc/vendor/require.min.js
 mode change 100644 => 100755 apidoc/vendor/semver.min.js
 mode change 100644 => 100755 apidoc/vendor/webfontloader.js
 delete mode 100644 public/scripts/app.42b5ad22.js
 create mode 100644 public/scripts/app.c5d20425.js
 create mode 100644 public/scripts/vendor.17cdb947.js
 delete mode 100644 public/scripts/vendor.4b108999.js
 create mode 100644 server/files/attachments/1598272067460-Auto Generated Inline Image 1
 create mode 100644 server/files/attachments/1598272067646-Auto Generated Inline Image 1
 create mode 100644 server/files/attachments/1598272068853-Captura de pantalla 2020-08-14 a las 15.53.25.png
 create mode 100644 server/files/attachments/1598272068853-Captura de pantalla 2020-08-14 a las 15.57.11.png
 create mode 100644 server/files/attachments/1598360289779-Captura de pantalla 2020-08-25 a las 13.11.05.png
 create mode 100644 server/files/attachments/1598880822925-Captura de pantalla 2020-08-25 a las 13.11.05.png
 create mode 100644 server/files/attachments/1598880823352-Captura de pantalla 2020-08-25 a las 13.11.05.png
 create mode 100644 server/files/attachments/1598880823781-Captura de pantalla 2020-08-25 a las 13.11.05.png
 create mode 100644 "server/files/attachments/1599641893212-\345\276\256\344\277\241\345\233\276\347\211\207_20200909165537.png"
 create mode 100644 "server/files/attachments/1599642703731-\345\276\256\344\277\241\345\233\276\347\211\207_20200909165537.png"
 create mode 100644 server/services/dump.rdb

diff --git a/apidoc/api_data.js b/apidoc/api_data.js
index bfa991a..4080691 100644
--- a/apidoc/api_data.js
+++ b/apidoc/api_data.js
@@ -1,38663 +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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/analytics/custom_reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/analytics/custom_reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/analytics/custom_reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/analytics/custom_reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/analytics/custom_reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/analytics/default_reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/analytics/default_reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/analytics/default_reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/analytics/default_reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/analytics/default_reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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",
-            "optional": false,
-            "field": "basename",
-            "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "reportId",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "reportType",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/analytics/extracted_reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/analytics/extracted_reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/analytics/extracted_reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/analytics/extracted_reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/analytics/extracted_reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "optional": true,
-            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "optional": true,
-            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/analytics/field_reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/analytics/field_reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/analytics/field_reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/analytics/field_reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/analytics/field_reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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 -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addFields",
-    "group": "Analytic_Field_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/analytics/metrics?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/analytics/metrics?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/analytics/metrics?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/analytics/metrics?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/analytics/metrics?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/analytics/tree_reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/analytics/tree_reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/analytics/tree_reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/analytics/tree_reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/analytics/tree_reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/analyticTreeReport/index.js",
-    "groupTitle": "Analytic_Tree_Reports"
-  },
-  {
-    "type": "post",
-    "url": "/api/attachments/clone",
-    "title": "Clone an existing Attachment",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/attachments/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CloneAttachments",
-    "group": "Attachments",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/attachment/index.js",
-    "groupTitle": "Attachments"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/attachments?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/attachments?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/attachments?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/attachments?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/attachments?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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\": \"[email-masked]\"}' \\\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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/automations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/automations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/automations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/automations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/automations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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\": \"[email-masked]\", \"...\": \"...\"}]' \\ \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": "<p>Allowed values: contactManager, integration, motionbar, jscripty, urlForward, browser, bot, script</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "data1",
-            "description": "<p>contactManager[ListId], integration[intName(zendesk)], motionbar[Popup(0),URL(1),WinApp(2)], urlForward[GET,POST], browser[TemplateId(0),URL(1)]</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "data2",
-            "description": "<p>integration[AccountId], motionbar[TemplateId,URL,WinAppPath], urlForward[URL]</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "data3",
-            "description": "<p>motionbar[NULL,NULL,WinAppArguments]</p>"
-          },
-          {
-            "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "data7",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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\": \"[email-masked]\", \"...\": \"...\"}]' \\ \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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/canned_answers?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/canned_answers?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/canned_answers?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/canned_answers?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/canned_answers?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cannedAnswer/index.js",
-    "groupTitle": "Canned_Answers"
-  },
-  {
-    "type": "get",
-    "url": "/chat/internal/users",
-    "title": "Gets Users Last Messages",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/chat/internal/users -v -u {name}:{password}  -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getLastUsersMessages",
-    "group": "ChatInternalMessage",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatInternalMessage/index.js",
-    "groupTitle": "ChatInternalMessage"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatApplication/index.js",
-    "groupTitle": "Chat_Applications"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/groups?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/groups?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/groups?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/groups?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/groups?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "closeReason",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "customerPort",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "vidaooSessionId",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/interactions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/interactions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/interactions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/interactions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/interactions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <p>This API is used to set as abandon an interaction and stop the routing.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatInteraction/index.js",
-    "groupTitle": "Chat_Interactions"
-  },
-  {
-    "type": "post",
-    "url": "/api/chat/interactions/{id}/vidaoo",
-    "title": "Create Vidaoo Session",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/interactions/{id}/vidaoo  -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "createVidaooSession",
-    "group": "Chat_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatInteraction/index.js",
-    "groupTitle": "Chat_Interactions"
-  },
-  {
-    "type": "put",
-    "url": "/api/chat/interactions/{id}/custom_update",
-    "title": "Update interaction",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/interactions/{id}/custom_update -d '{\"channel\": \"chat\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "customUpdate",
-    "group": "Chat_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <p>This API is used to update an interaction.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatInteraction/index.js",
-    "groupTitle": "Chat_Interactions"
-  },
-  {
-    "type": "get",
-    "url": "/api/chat/interactions/{id}/download",
-    "title": "Gets interaction",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/interactions/{id}/download -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "download",
-    "group": "Chat_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/internal/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/internal/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/internal/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/internal/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/internal/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/offline_messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/offline_messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/offline_messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/offline_messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/offline_messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/reports/queue?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/reports/queue?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/reports/queue?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/reports/queue?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/reports/queue?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatQueue/index.js",
-    "groupTitle": "Chat_Queues"
-  },
-  {
-    "type": "post",
-    "url": "/api/chat/reports/transfer",
-    "title": "Creates a new Chat Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/reports/transfer -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateChat_Transfer_Reports",
-    "group": "Chat_Transfer_Reports",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "uniqueid",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"account\"",
-              "\"agent\"",
-              "\"queue\""
-            ],
-            "optional": false,
-            "field": "type",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "transferredAt",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatTransferReport/index.js",
-    "groupTitle": "Chat_Transfer_Reports"
-  },
-  {
-    "type": "delete",
-    "url": "/api/chat/reports/transfer/{id}",
-    "title": "Deletes a Chat Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/reports/transfer/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteChat_Transfer_Reports",
-    "group": "Chat_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatTransferReport/index.js",
-    "groupTitle": "Chat_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/chat/reports/transfer/describe",
-    "title": "Gets table info about Chat Transfer Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/reports/transfer/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeChat_Transfer_Reports",
-    "group": "Chat_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatTransferReport/index.js",
-    "groupTitle": "Chat_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/chat/reports/transfer",
-    "title": "Gets a list of Chat Transfer Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/reports/transfer -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetChat_Transfer_Reports",
-    "group": "Chat_Transfer_Reports",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/reports/transfer?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/reports/transfer?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/reports/transfer?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/reports/transfer?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/reports/transfer?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatTransferReport/index.js",
-    "groupTitle": "Chat_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/chat/reports/transfer/{id}",
-    "title": "Gets a single Chat Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/reports/transfer/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowChat_Transfer_Reports",
-    "group": "Chat_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatTransferReport/index.js",
-    "groupTitle": "Chat_Transfer_Reports"
-  },
-  {
-    "type": "put",
-    "url": "/api/chat/reports/transfer/{id}",
-    "title": "Update an existing Chat Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/reports/transfer/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateChat_Transfer_Reports",
-    "group": "Chat_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatTransferReport/index.js",
-    "groupTitle": "Chat_Transfer_Reports"
-  },
-  {
-    "type": "post",
-    "url": "/api/chat/websites/{id}/users",
-    "title": "Add agents to a website",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/websites/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddAgents",
-    "group": "Chat_Websites",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatWebsite/index.js",
-    "groupTitle": "Chat_Websites"
-  },
-  {
-    "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": true,
-            "field": "customerAlias",
-            "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": "Boolean",
-            "optional": true,
-            "field": "enableSendButton",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "feedbackTitle",
-            "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": "Boolean",
-            "optional": true,
-            "field": "enableCustomerCheckmarks",
-            "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "notificationTemplate",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "notificationSound",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "notificationShake",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "hideWhenOffline",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "agentIdentifier",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "waitForTheAssignedAgent",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "alignment",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "verticalAlignment",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "messagesAlignment",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "defaultTitle",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "customerAvatar",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "showCustomerAvatar",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "messageFontSize",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "backgroundColor",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "queueTransfer",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "queueTransferTimeout",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "agentTransfer",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "agentTransferTimeout",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "systemAlias",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "systemAvatar",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "mandatoryDispositionPauseId",
-            "description": "<p>Status to put when mandatory disposition is enabled</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "mandatoryDisposition",
-            "description": "<p>Enabled/disables mandatory dispo on a queue</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "vidaooEscalation",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "vidaooApiKey",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatWebsite/index.js",
-    "groupTitle": "Chat_Websites"
-  },
-  {
-    "type": "get",
-    "url": "/api/chat/websites/{id}/users",
-    "title": "Gets agents from website",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/websites/{id}/users -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetAgents",
-    "group": "Chat_Websites",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/websites?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/websites?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/websites?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/websites?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/websites?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatWebsite/index.js",
-    "groupTitle": "Chat_Websites"
-  },
-  {
-    "type": "delete",
-    "url": "/api/chat/websites/{id}/users",
-    "title": "Removes agents from a website",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/websites/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveAgents",
-    "group": "Chat_Websites",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatWebsite/index.js",
-    "groupTitle": "Chat_Websites"
-  },
-  {
-    "type": "delete",
-    "url": "/api/chat/websites/{id}/canned_answers",
-    "title": "Removes canned answers from account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/websites/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveAnswers",
-    "group": "Chat_Websites",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatWebsite/index.js",
-    "groupTitle": "Chat_Websites"
-  },
-  {
-    "type": "delete",
-    "url": "/api/chat/websites/{id}/dispositions",
-    "title": "Removes canned answers from account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/websites/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveDispositions",
-    "group": "Chat_Websites",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Virtual",
-            "optional": true,
-            "field": "name",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "optional": true,
-            "field": "appdata",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interval",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatWebsite/index.js",
-    "groupTitle": "Chat_Websites"
-  },
-  {
-    "type": "post",
-    "url": "/api/chat/websites/{id}/customer_avatar",
-    "title": "Add customer avatar",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/websites/{id}/customer_avatar -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addCustomerAvatar",
-    "group": "Chat_Websites",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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\": \"vip\"}' -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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "closeReason",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "customerPort",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "vidaooSessionId",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatWebsite/index.js",
-    "groupTitle": "Chat_Websites"
-  },
-  {
-    "type": "post",
-    "url": "/api/chat/websites/{id}/system_avatar",
-    "title": "Add system avatar",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/websites/{id}/system_avatar -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addSystemAvatar",
-    "group": "Chat_Websites",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatWebsite/index.js",
-    "groupTitle": "Chat_Websites"
-  },
-  {
-    "type": "get",
-    "url": "/api/chat/websites/{id}/customer_avatar",
-    "title": "Get Customer Avatar",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/websites/{id}/customer_avatar -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getCustomerAvatar",
-    "group": "Chat_Websites",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatWebsite/index.js",
-    "groupTitle": "Chat_Websites"
-  },
-  {
-    "type": "get",
-    "url": "/api/chat/websites/{id}/dispositions",
-    "title": "Gets account 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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatWebsite/index.js",
-    "groupTitle": "Chat_Websites"
-  },
-  {
-    "type": "get",
-    "url": "/api/chat/websites/{id}/system_avatar",
-    "title": "Get System Avatar",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/websites/{id}/system_avatar -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getSystemAvatar",
-    "group": "Chat_Websites",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <p>This API is used to create a new chat message to be sent to the system.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatWebsite/index.js",
-    "groupTitle": "Chat_Websites"
-  },
-  {
-    "type": "post",
-    "url": "/api/cloudProviders",
-    "title": "Creates a new CloudProvider",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cloudProviders -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateCloudProviders",
-    "group": "CloudProviders",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "name",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"AmazonAWS\"",
-              "\"Google\""
-            ],
-            "optional": false,
-            "field": "service",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "data1",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "data2",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cloudProvider/index.js",
-    "groupTitle": "CloudProviders"
-  },
-  {
-    "type": "delete",
-    "url": "/api/cloudProviders/{id}",
-    "title": "Deletes a CloudProvider",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cloudProviders/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteCloudProviders",
-    "group": "CloudProviders",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cloudProvider/index.js",
-    "groupTitle": "CloudProviders"
-  },
-  {
-    "type": "get",
-    "url": "/api/cloudProviders",
-    "title": "Gets a list of CloudProviders",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cloudProviders -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetCloudProviders",
-    "group": "CloudProviders",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cloudProviders?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cloudProviders?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cloudProviders?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cloudProviders?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cloudProviders?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/cloudProvider/index.js",
-    "groupTitle": "CloudProviders"
-  },
-  {
-    "type": "get",
-    "url": "/api/cloudProviders/{id}",
-    "title": "Gets a single CloudProvider",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cloudProviders/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowCloudProviders",
-    "group": "CloudProviders",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cloudProvider/index.js",
-    "groupTitle": "CloudProviders"
-  },
-  {
-    "type": "put",
-    "url": "/api/cloudProviders/{id}",
-    "title": "Update an existing CloudProvider",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cloudProviders/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateCloudProviders",
-    "group": "CloudProviders",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cloudProvider/index.js",
-    "groupTitle": "CloudProviders"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmCompany/index.js",
-    "groupTitle": "Cm_Companies"
-  },
-  {
-    "type": "get",
-    "url": "/api/cm/companies/describe",
-    "title": "Gets table info about Companies",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cm/companies/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeCompanies",
-    "group": "Cm_Companies",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/companies?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/companies?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/companies?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/companies?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/companies?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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\": \"[email-masked]\", \"...\": \"...\"}]' \\ \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": "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": true,
-            "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": "fb_data",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "twitter",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "skype",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "teams",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "viber",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "line",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "wechat",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "telegram",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "UserId",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "priority",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "scheduledat",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmContact/index.js",
-    "groupTitle": "Cm_Contacts"
-  },
-  {
-    "type": "get",
-    "url": "/api/cm/contacts",
-    "title": "Gets a list of Contacts",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cm/contacts -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetContacts",
-    "group": "Cm_Contacts",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/contacts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/contacts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/contacts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/contacts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/contacts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmContact/index.js",
-    "groupTitle": "Cm_Contacts"
-  },
-  {
-    "type": "post",
-    "url": "/api/cm/contacts/create_many",
-    "title": "Create Contacts",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cm/contacts/create_many -d '[{\"firstName\": \"John\", \"lastName\": \"doe\", \"...\": \"...\"}]' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "bulkCreate",
-    "group": "Cm_Contacts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmContact/index.js",
-    "groupTitle": "Cm_Contacts"
-  },
-  {
-    "type": "get",
-    "url": "/api/cm/contacts/{id}/tags",
-    "title": "Gets configurations tags",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cm/contacts/{id}/tags -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getTags",
-    "group": "Cm_Contacts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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 '{\"from\": 1, \"to\": 2}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "merge",
-    "group": "Cm_Contacts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmContact/index.js",
-    "groupTitle": "Cm_Contacts"
-  },
-  {
-    "type": "post",
-    "url": "/api/cm/contacts/{id}/tags",
-    "title": "Sets new tags",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cm/contacts/{id}/tags -d '{\"ids\": [1,12]}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "setTags",
-    "group": "Cm_Contacts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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 '{\"firstName\": \"John\", \"lastName\": \"Doe\"}' -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "update",
-    "group": "Cm_Contacts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/custom_fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/custom_fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/custom_fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/custom_fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/custom_fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "countnosuchnumberretry",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "countdropretry",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "countabandonedretry",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "countmachineretry",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "countagentrejectretry",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/hopper?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/hopper?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/hopper?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/hopper?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/hopper?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/hopper_black?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/hopper_black?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/hopper_black?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/hopper_black?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/hopper_black?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmHopperBlack/index.js",
-    "groupTitle": "Cm_Hopper_Black"
-  },
-  {
-    "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\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "/checkContactHopper",
-    "group": "Cm_Hopper_Final",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmHopperFinal/index.js",
-    "groupTitle": "Cm_Hopper_Final"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/hopper_final?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/hopper_final?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/hopper_final?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/hopper_final?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/hopper_final?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "originatecalleridnum",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "originatecalleridname",
-            "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "countnosuchnumberretry",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "countdropretry",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "countabandonedretry",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "countmachineretry",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "countagentrejectretry",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/hopper_history?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/hopper_history?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/hopper_history?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/hopper_history?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/hopper_history?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "dialPrefix",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmList/index.js",
-    "groupTitle": "Cm_Lists"
-  },
-  {
-    "type": "get",
-    "url": "/api/cm/lists/describe",
-    "title": "Gets table info about Lists",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cm/lists/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeLists",
-    "group": "Cm_Lists",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/lists?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/lists?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/lists?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/lists?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/lists?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmList/index.js",
-    "groupTitle": "Cm_Lists"
-  },
-  {
-    "type": "delete",
-    "url": "/api/cm/lists/{id}/dispositions",
-    "title": "Removes dispositions from account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cm/lists/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveDispositions",
-    "group": "Cm_Lists",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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\": \"[email-masked]\", \"...\": \"...\"}]' \\ \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": "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": true,
-            "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": "fb_data",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "twitter",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "skype",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "teams",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "viber",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "line",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "wechat",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "telegram",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "UserId",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "priority",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "scheduledat",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmList/index.js",
-    "groupTitle": "Cm_Lists"
-  },
-  {
-    "type": "post",
-    "url": "/api/cm/lists/{id}/dispositions",
-    "title": "Creates new disposition",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cm/lists/{id}/dispositions -d '{\"name\": \"vip\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addDisposition",
-    "group": "Cm_Lists",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "name",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmList/index.js",
-    "groupTitle": "Cm_Lists"
-  },
-  {
-    "type": "get",
-    "url": "/api/cm/lists/{id}/dispositions",
-    "title": "Gets list 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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmList/index.js",
-    "groupTitle": "Cm_Lists"
-  },
-  {
-    "type": "post",
-    "url": "/api/cm/contacts/upload/:id",
-    "title": "Import new contacts by csv",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cm/contacts/upload/:id -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "import",
-    "group": "Cm_contacts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmContact/index.js",
-    "groupTitle": "Cm_contacts"
-  },
-  {
-    "type": "post",
-    "url": "/api/cm/contacts/upload",
-    "title": "Upload csv",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cm/contacts/upload -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "upload",
-    "group": "Cm_contacts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmContact/index.js",
-    "groupTitle": "Cm_contacts"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/dashboards?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/dashboards?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/dashboards?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/dashboards?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/dashboards?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Dashboards",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/dashboard/index.js",
-    "groupTitle": "Dashboards"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/desk/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/desk/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/desk/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/desk/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/desk/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/desk/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/desk/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/desk/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/desk/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/desk/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/desk/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/desk/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/desk/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/desk/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/desk/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDeskField/index.js",
-    "groupTitle": "Desk_Fields"
-  },
-  {
-    "type": "post",
-    "url": "/api/dispositions",
-    "title": "Creates a new Disposition",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateDispositions",
-    "group": "Dispositions",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "name",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/disposition/index.js",
-    "groupTitle": "Dispositions"
-  },
-  {
-    "type": "delete",
-    "url": "/api/dispositions/{id}",
-    "title": "Deletes a Disposition",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/dispositions/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteDispositions",
-    "group": "Dispositions",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/disposition/index.js",
-    "groupTitle": "Dispositions"
-  },
-  {
-    "type": "get",
-    "url": "/api/dispositions",
-    "title": "Gets a list of Dispositions",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/dispositions -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetDispositions",
-    "group": "Dispositions",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/dispositions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/dispositions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/dispositions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/dispositions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/dispositions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/disposition/index.js",
-    "groupTitle": "Dispositions"
-  },
-  {
-    "type": "get",
-    "url": "/api/dispositions/{id}",
-    "title": "Gets a single Disposition",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/dispositions/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowDispositions",
-    "group": "Dispositions",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/disposition/index.js",
-    "groupTitle": "Dispositions"
-  },
-  {
-    "type": "put",
-    "url": "/api/dispositions/{id}",
-    "title": "Update an existing Disposition",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateDispositions",
-    "group": "Dispositions",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/disposition/index.js",
-    "groupTitle": "Dispositions"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/dynamics365/accounts",
-    "title": "Creates a new Dynamics365 Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateDynamics365_Accounts",
-    "group": "Dynamics365_Accounts",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "name",
-            "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": "tenantId",
-            "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": "serverUrl",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Account/index.js",
-    "groupTitle": "Dynamics365_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/integrations/dynamics365/accounts/{id}",
-    "title": "Deletes a Dynamics365 Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/accounts/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteDynamics365_Accounts",
-    "group": "Dynamics365_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Account/index.js",
-    "groupTitle": "Dynamics365_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/dynamics365/accounts",
-    "title": "Gets a list of Dynamics365 Accounts",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/accounts -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetDynamics365_Accounts",
-    "group": "Dynamics365_Accounts",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/dynamics365/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/dynamics365/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/dynamics365/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/dynamics365/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/dynamics365/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Account/index.js",
-    "groupTitle": "Dynamics365_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/dynamics365/accounts/{id}",
-    "title": "Gets a single Dynamics365 Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/accounts/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowDynamics365_Accounts",
-    "group": "Dynamics365_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Account/index.js",
-    "groupTitle": "Dynamics365_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/dynamics365/accounts/{id}/configurations",
-    "title": "Creates new configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addConfiguration",
-    "group": "Dynamics365_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Account/index.js",
-    "groupTitle": "Dynamics365_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/dynamics365/accounts/{id}/configurations",
-    "title": "Gets account configurations",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/accounts/{id}/configurations -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getConfigurations",
-    "group": "Dynamics365_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Account/index.js",
-    "groupTitle": "Dynamics365_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/dynamics365/accounts/{id}/fields",
-    "title": "Gets account fields",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/accounts/{id}/fields -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getFields",
-    "group": "Dynamics365_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Account/index.js",
-    "groupTitle": "Dynamics365_Accounts"
-  },
-  {
-    "type": "put",
-    "url": "/api/integrations/dynamics365/accounts/{id}",
-    "title": "Update an existing Dynamics365 Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateDynamics365_Accounts",
-    "group": "Dynamics365_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Account/index.js",
-    "groupTitle": "Dynamics365_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/dynamics365/configurations",
-    "title": "Creates a new Dynamics365 Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateDynamics365_Configurations",
-    "group": "Dynamics365_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": [
-              "\"incident\"",
-              "\"phonecall\""
-            ],
-            "optional": true,
-            "field": "ticketType",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Configuration/index.js",
-    "groupTitle": "Dynamics365_Configurations"
-  },
-  {
-    "type": "delete",
-    "url": "/api/integrations/dynamics365/configurations/{id}",
-    "title": "Deletes a Dynamics365 Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/configurations/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteDynamics365_Configurations",
-    "group": "Dynamics365_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Configuration/index.js",
-    "groupTitle": "Dynamics365_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/dynamics365/configurations",
-    "title": "Gets a list of Dynamics365 Configurations",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/configurations -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetDynamics365_Configurations",
-    "group": "Dynamics365_Configurations",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/dynamics365/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/dynamics365/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/dynamics365/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/dynamics365/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/dynamics365/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Configuration/index.js",
-    "groupTitle": "Dynamics365_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/dynamics365/configurations/{id}",
-    "title": "Gets a single Dynamics365 Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/configurations/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowDynamics365_Configurations",
-    "group": "Dynamics365_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Configuration/index.js",
-    "groupTitle": "Dynamics365_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/dynamics365/configurations/{id}/descriptions",
-    "title": "Gets configurations descriptions",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/configurations/{id}/descriptions -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getDescriptions",
-    "group": "Dynamics365_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Configuration/index.js",
-    "groupTitle": "Dynamics365_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/dynamics365/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": "Dynamics365_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Configuration/index.js",
-    "groupTitle": "Dynamics365_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/zoho/configurations/{id}/subjects",
-    "title": "Gets configurations subjects",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/configurations/{id}/subjects -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getSubjects",
-    "group": "Dynamics365_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Configuration/index.js",
-    "groupTitle": "Dynamics365_Configurations"
-  },
-  {
-    "type": "put",
-    "url": "/api/integrations/dynamics365/configurations/{id}",
-    "title": "Update an existing Dynamics365 Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateDynamics365_Configurations",
-    "group": "Dynamics365_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Configuration/index.js",
-    "groupTitle": "Dynamics365_Configurations"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/dynamics365/fields",
-    "title": "Creates a new Dynamics365 Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateDynamics365_Fields",
-    "group": "Dynamics365_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Field/index.js",
-    "groupTitle": "Dynamics365_Fields"
-  },
-  {
-    "type": "delete",
-    "url": "/api/integrations/dynamics365/fields/{id}",
-    "title": "Deletes a Dynamics365 Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/fields/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteDynamics365_Fields",
-    "group": "Dynamics365_Fields",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Field/index.js",
-    "groupTitle": "Dynamics365_Fields"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/dynamics365/fields",
-    "title": "Gets a list of Dynamics365 Fields",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/fields -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetDynamics365_Fields",
-    "group": "Dynamics365_Fields",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/dynamics365/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/dynamics365/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/dynamics365/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/dynamics365/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/dynamics365/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Field/index.js",
-    "groupTitle": "Dynamics365_Fields"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/dynamics365/fields/{id}",
-    "title": "Gets a single Dynamics365 Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/fields/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowDynamics365_Fields",
-    "group": "Dynamics365_Fields",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Field/index.js",
-    "groupTitle": "Dynamics365_Fields"
-  },
-  {
-    "type": "put",
-    "url": "/api/integrations/dynamics365/fields/{id}",
-    "title": "Update an existing Dynamics365 Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateDynamics365_Fields",
-    "group": "Dynamics365_Fields",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Field/index.js",
-    "groupTitle": "Dynamics365_Fields"
-  },
-  {
-    "type": "post",
-    "url": "/api/fax/accounts/{id}/users",
-    "title": "Add agents to a fax account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/fax/accounts/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddAgents",
-    "group": "Fax_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxAccount/index.js",
-    "groupTitle": "Fax_Accounts"
-  },
-  {
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "notificationTemplate",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "notificationSound",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "notificationShake",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "waitForTheAssignedAgent",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "queueTransfer",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "queueTransferTimeout",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "agentTransfer",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "agentTransferTimeout",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "mandatoryDispositionPauseId",
-            "description": "<p>Status to put when mandatory disposition is enabled</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "mandatoryDisposition",
-            "description": "<p>Enabled/disables mandatory dispo on a queue</p>"
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxAccount/index.js",
-    "groupTitle": "Fax_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/fax/accounts/{id}/users",
-    "title": "Gets agents from fax account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/fax/accounts/{id}/users -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetAgents",
-    "group": "Fax_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxAccount/index.js",
-    "groupTitle": "Fax_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/fax/accounts/{id}/users",
-    "title": "Removes agents from a fax account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/fax/accounts/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveAgents",
-    "group": "Fax_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxAccount/index.js",
-    "groupTitle": "Fax_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/fax/accounts/{id}/dispositions",
-    "title": "Removes dispositions from account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/fax/accounts/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveDispositions",
-    "group": "Fax_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Virtual",
-            "optional": true,
-            "field": "name",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "optional": true,
-            "field": "appdata",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interval",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "optional": true,
-            "field": "appdata",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interval",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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\": \"vip\"}' -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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "optional": true,
-            "field": "appdata",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interval",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "optional": true,
-            "field": "appdata",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interval",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/applications?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/applications?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/applications?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/applications?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/applications?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxApplication/index.js",
-    "groupTitle": "Fax_Applications"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/interactions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/interactions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/interactions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/interactions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/interactions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxInteraction/index.js",
-    "groupTitle": "Fax_Interactions"
-  },
-  {
-    "type": "get",
-    "url": "/api/fax/interactions/{id}/download",
-    "title": "Get interactions",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/fax/interactions/{id}/download -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "download",
-    "group": "Fax_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxInteraction/index.js",
-    "groupTitle": "Fax_Interactions"
-  },
-  {
-    "type": "get",
-    "url": "/api/fax/messages/{id}/download",
-    "title": "Get message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/fax/messages/{id}/download -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "download",
-    "group": "Fax_Message",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxMessage/index.js",
-    "groupTitle": "Fax_Message"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/reports/queue?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/reports/queue?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/reports/queue?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/reports/queue?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/reports/queue?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxQueue/index.js",
-    "groupTitle": "Fax_Queues"
-  },
-  {
-    "type": "post",
-    "url": "/api/fax/reports/transfer",
-    "title": "Creates a new Fax Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/fax/reports/transfer -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateFax_Transfer_Reports",
-    "group": "Fax_Transfer_Reports",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "uniqueid",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"account\"",
-              "\"agent\"",
-              "\"queue\""
-            ],
-            "optional": false,
-            "field": "type",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "transferredAt",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxTransferReport/index.js",
-    "groupTitle": "Fax_Transfer_Reports"
-  },
-  {
-    "type": "delete",
-    "url": "/api/fax/reports/transfer/{id}",
-    "title": "Deletes a Fax Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/fax/reports/transfer/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteFax_Transfer_Reports",
-    "group": "Fax_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxTransferReport/index.js",
-    "groupTitle": "Fax_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/fax/reports/transfer/describe",
-    "title": "Gets table info about Fax Transfer Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/fax/reports/transfer/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeFax_Transfer_Reports",
-    "group": "Fax_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxTransferReport/index.js",
-    "groupTitle": "Fax_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/fax/reports/transfer",
-    "title": "Gets a list of Fax Transfer Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/fax/reports/transfer -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetFax_Transfer_Reports",
-    "group": "Fax_Transfer_Reports",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/reports/transfer?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/reports/transfer?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/reports/transfer?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/reports/transfer?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/reports/transfer?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxTransferReport/index.js",
-    "groupTitle": "Fax_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/fax/reports/transfer/{id}",
-    "title": "Gets a single Fax Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/fax/reports/transfer/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowFax_Transfer_Reports",
-    "group": "Fax_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxTransferReport/index.js",
-    "groupTitle": "Fax_Transfer_Reports"
-  },
-  {
-    "type": "put",
-    "url": "/api/fax/reports/transfer/{id}",
-    "title": "Update an existing Fax Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/fax/reports/transfer/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateFax_Transfer_Reports",
-    "group": "Fax_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxTransferReport/index.js",
-    "groupTitle": "Fax_Transfer_Reports"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/freshdesk/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/freshdesk/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/freshdesk/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/freshdesk/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/freshdesk/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/freshdesk/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/freshdesk/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/freshdesk/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/freshdesk/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/freshdesk/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/freshdesk/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/freshdesk/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/freshdesk/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/freshdesk/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/freshdesk/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshdeskField/index.js",
-    "groupTitle": "Freshdesk_Fields"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/freshsales/accounts",
-    "title": "Creates a new Freshsales Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateFreshsales_Accounts",
-    "group": "Freshsales_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesAccount/index.js",
-    "groupTitle": "Freshsales_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/integrations/freshsales/accounts/{id}",
-    "title": "Deletes a Freshsales Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/accounts/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteFreshsales_Accounts",
-    "group": "Freshsales_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesAccount/index.js",
-    "groupTitle": "Freshsales_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/freshsales/accounts",
-    "title": "Gets a list of Freshsales Accounts",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/accounts -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetFreshsales_Accounts",
-    "group": "Freshsales_Accounts",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/freshsales/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/freshsales/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/freshsales/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/freshsales/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/freshsales/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesAccount/index.js",
-    "groupTitle": "Freshsales_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/freshsales/accounts/{id}",
-    "title": "Gets a single Freshsales Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/accounts/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowFreshsales_Accounts",
-    "group": "Freshsales_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesAccount/index.js",
-    "groupTitle": "Freshsales_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/freshsales/accounts/{id}/configurations",
-    "title": "Creates new configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addConfiguration",
-    "group": "Freshsales_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesAccount/index.js",
-    "groupTitle": "Freshsales_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/freshsales/accounts/{id}/configurations",
-    "title": "Gets account configurations",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/accounts/{id}/configurations -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getConfigurations",
-    "group": "Freshsales_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesAccount/index.js",
-    "groupTitle": "Freshsales_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/freshsales/accounts/{id}/fields",
-    "title": "Gets account fields",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/accounts/{id}/fields -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getFields",
-    "group": "Freshsales_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesAccount/index.js",
-    "groupTitle": "Freshsales_Accounts"
-  },
-  {
-    "type": "put",
-    "url": "/api/integrations/freshsales/accounts/{id}",
-    "title": "Update an existing Freshsales Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateFreshsales_Accounts",
-    "group": "Freshsales_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesAccount/index.js",
-    "groupTitle": "Freshsales_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/freshsales/configurations",
-    "title": "Creates a new Freshsales Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateFreshsales_Configurations",
-    "group": "Freshsales_Configurations",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "name",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesConfiguration/index.js",
-    "groupTitle": "Freshsales_Configurations"
-  },
-  {
-    "type": "delete",
-    "url": "/api/integrations/freshsales/configurations/{id}",
-    "title": "Deletes a Freshsales Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/configurations/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteFreshsales_Configurations",
-    "group": "Freshsales_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesConfiguration/index.js",
-    "groupTitle": "Freshsales_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/freshsales/configurations",
-    "title": "Gets a list of Freshsales Configurations",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/configurations -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetFreshsales_Configurations",
-    "group": "Freshsales_Configurations",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/freshsales/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/freshsales/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/freshsales/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/freshsales/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/freshsales/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesConfiguration/index.js",
-    "groupTitle": "Freshsales_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/freshsales/configurations/{id}",
-    "title": "Gets a single Freshsales Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/configurations/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowFreshsales_Configurations",
-    "group": "Freshsales_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesConfiguration/index.js",
-    "groupTitle": "Freshsales_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/freshsales/configurations/{id}/descriptions",
-    "title": "Gets configurations descriptions",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/configurations/{id}/descriptions -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getDescriptions",
-    "group": "Freshsales_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesConfiguration/index.js",
-    "groupTitle": "Freshsales_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/freshsales/configurations/{id}/fields",
-    "title": "Gets configurations fields",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/configurations/{id}/fields -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getFields",
-    "group": "Freshsales_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesConfiguration/index.js",
-    "groupTitle": "Freshsales_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/freshsales/configurations/{id}/subjects",
-    "title": "Gets configurations subjects",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/configurations/{id}/subjects -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getSubjects",
-    "group": "Freshsales_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesConfiguration/index.js",
-    "groupTitle": "Freshsales_Configurations"
-  },
-  {
-    "type": "put",
-    "url": "/api/integrations/freshsales/configurations/{id}",
-    "title": "Update an existing Freshsales Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateFreshsales_Configurations",
-    "group": "Freshsales_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesConfiguration/index.js",
-    "groupTitle": "Freshsales_Configurations"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/freshsales/fields",
-    "title": "Creates a new Freshsales Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateFreshsales_Fields",
-    "group": "Freshsales_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesField/index.js",
-    "groupTitle": "Freshsales_Fields"
-  },
-  {
-    "type": "delete",
-    "url": "/api/integrations/freshsales/fields/{id}",
-    "title": "Deletes a Freshsales Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/fields/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteFreshsales_Fields",
-    "group": "Freshsales_Fields",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesField/index.js",
-    "groupTitle": "Freshsales_Fields"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/freshsales/fields",
-    "title": "Gets a list of Freshsales Fields",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/fields -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetFreshsales_Fields",
-    "group": "Freshsales_Fields",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/freshsales/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/freshsales/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/freshsales/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/freshsales/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/freshsales/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesField/index.js",
-    "groupTitle": "Freshsales_Fields"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/freshsales/fields/{id}",
-    "title": "Gets a single Freshsales Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/fields/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowFreshsales_Fields",
-    "group": "Freshsales_Fields",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesField/index.js",
-    "groupTitle": "Freshsales_Fields"
-  },
-  {
-    "type": "put",
-    "url": "/api/integrations/freshsales/fields/{id}",
-    "title": "Update an existing Freshsales Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateFreshsales_Fields",
-    "group": "Freshsales_Fields",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesField/index.js",
-    "groupTitle": "Freshsales_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/campaign/index.js",
-    "groupTitle": "IVR_Campaigns"
-  },
-  {
-    "type": "post",
-    "url": "/api/campaigns/clone",
-    "title": "Clone an existing IVR Campaign",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/campaigns/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CloneIVR_Campaigns",
-    "group": "IVR_Campaigns",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Active/Disactive Campaign</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "limitCalls",
-            "description": "<p>Max 200 calls.</p>"
-          },
-          {
-            "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": "<p>Originate Timeout Seconds (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialCongestionMaxRetry",
-            "description": "<p>#Congestion Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialCongestionRetryFrequency",
-            "description": "<p>Congestion Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialBusyMaxRetry",
-            "description": "<p>#Busy Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialBusyRetryFrequency",
-            "description": "<p>Busy Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialNoAnswerMaxRetry",
-            "description": "<p>#NoAnswer Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialNoAnswerRetryFrequency",
-            "description": "<p>NoAnswer Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialGlobalMaxRetry",
-            "description": "<p>#Global Max Retry (min:1, max:999)</p>"
-          },
-          {
-            "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": "<p>Active/Disactive AMD</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDInitialSilence",
-            "description": "<p>#AMD Initial Silence</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDGreeting",
-            "description": "<p>#AMD Greeting</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDAfterGreetingSilence",
-            "description": "<p>#AMD After Greeting Silence</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDTotalAnalysisTime",
-            "description": "<p>#AMD Total Analysis Time</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDMinWordLength",
-            "description": "<p>#AMD Min Word Length</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDBetweenWordsSilence",
-            "description": "<p>#AMD Between Words Silence</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDMaximumNumberOfWords",
-            "description": "<p>#AMD Maximum Number Of Words</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDSilenceThreshold",
-            "description": "<p>#AMD Silence Threshold (min:0, max:32767)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDMaximumWordLength",
-            "description": "<p>#AMD Maximum Word Length</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"DESC\"",
-              "\"ASC\""
-            ],
-            "optional": true,
-            "field": "dialOrderByScheduledAt",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "dialPrefix",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialRandomLastDigitCallerIdNumber",
-            "description": "<p>Random Last Digit (min:1, max:15)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialCutDigit",
-            "description": "<p>Cut Digit (min:1, max:15)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialNoSuchNumberMaxRetry",
-            "description": "<p>#NoSuchNumber Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialNoSuchNumberRetryFrequency",
-            "description": "<p>NoSuchNumber Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialDropMaxRetry",
-            "description": "<p>#Drop Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialDropRetryFrequency",
-            "description": "<p>Drop Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAbandonedMaxRetry",
-            "description": "<p>#Abandoned Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAbandonedRetryFrequency",
-            "description": "<p>Abandoned Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialMachineMaxRetry",
-            "description": "<p>#Machine Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialMachineRetryFrequency",
-            "description": "<p>Machine Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAgentRejectMaxRetry",
-            "description": "<p>#AgentReject Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAgentRejectRetryFrequency",
-            "description": "<p>AgentReject Retry Frequency Minutes (min:1, max:99999)</p>"
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/campaigns?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/campaigns?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/campaigns?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/campaigns?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/campaigns?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/intervals?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/intervals?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/intervals?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/intervals?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/intervals?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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 -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addIntervals",
-    "group": "Intervals",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/jscripty/answers/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/jscripty/answers/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/jscripty/answers/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/jscripty/answers/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/jscripty/answers/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/jscripty/questions/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/jscripty/questions/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/jscripty/questions/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/jscripty/questions/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/jscripty/questions/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/jscripty/sessions/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/jscripty/sessions/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/jscripty/sessions/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/jscripty/sessions/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/jscripty/sessions/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "sendUnpauseOnSubmit",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/jscripty/projects?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/jscripty/projects?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/jscripty/projects?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/jscripty/projects?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/jscripty/projects?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/license/index.js",
-    "groupTitle": "License"
-  },
-  {
-    "type": "put",
-    "url": "/api/license/{id}",
-    "title": "Update License Info",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/license/{id} -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "update",
-    "group": "License",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/license/index.js",
-    "groupTitle": "License"
-  },
-  {
-    "type": "post",
-    "url": "/api/mail/accounts/{id}/users",
-    "title": "Add agents to a mail account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/mail/accounts/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddAgents",
-    "group": "Mail_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailAccount/index.js",
-    "groupTitle": "Mail_Accounts"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailAccount/index.js",
-    "groupTitle": "Mail_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/mail/accounts/{id}",
-    "title": "Deletes a mail account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/mail/accounts/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteMailAccounts",
-    "group": "Mail_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailAccount/index.js",
-    "groupTitle": "Mail_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/mail/accounts/{id}/users",
-    "title": "Gets agents from mail account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/mail/accounts/{id}/users -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetAgents",
-    "group": "Mail_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailAccount/index.js",
-    "groupTitle": "Mail_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/mail/accounts/{id}/users",
-    "title": "Removes agents from a mail account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/mail/accounts/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveAgents",
-    "group": "Mail_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailAccount/index.js",
-    "groupTitle": "Mail_Accounts"
-  },
-  {
-    "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": "Mail_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailAccount/index.js",
-    "groupTitle": "Mail_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/mail/accounts/{id}/dispositions",
-    "title": "Removes dispositions from account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/mail/accounts/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveDispositions",
-    "group": "Mail_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailAccount/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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Virtual",
-            "optional": true,
-            "field": "name",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "optional": true,
-            "field": "appdata",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interval",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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\"}' -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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "lastMsgBody",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "lastMsgText",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailAccount/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\" <[email-masked]>'}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "sendMail",
-    "group": "Mail_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailApplication/index.js",
-    "groupTitle": "Mail_Applications"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "lastMsgBody",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "lastMsgText",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/interactions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/interactions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/interactions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/interactions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/interactions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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\": \"[email-masked]\", \"...\": \"...\"}]' \\ \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": "Text",
-            "optional": true,
-            "field": "plainBody",
-            "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "originTo",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "originCc",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailInteraction/index.js",
-    "groupTitle": "Mail_Interactions"
-  },
-  {
-    "type": "get",
-    "url": "/api/mail/interactions/{id}/download",
-    "title": "Gets interaction",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/mail/interactions/{id}/download -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "download",
-    "group": "Mail_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailMessage/index.js",
-    "groupTitle": "Mail_Messages"
-  },
-  {
-    "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_Messages",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailMessage/index.js",
-    "groupTitle": "Mail_Messages"
-  },
-  {
-    "type": "get",
-    "url": "/api/mail/messages/{id}/download",
-    "title": "Gets message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/mail/messages/{id}/download -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "download",
-    "group": "Mail_Messages",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailMessage/index.js",
-    "groupTitle": "Mail_Messages"
-  },
-  {
-    "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_Messages",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/reports/queue?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/reports/queue?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/reports/queue?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/reports/queue?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/reports/queue?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/out_servers?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/out_servers?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/out_servers?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/out_servers?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/out_servers?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/substatuses?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/substatuses?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/substatuses?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/substatuses?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/substatuses?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailSubstatus/index.js",
-    "groupTitle": "Mail_Substatuses"
-  },
-  {
-    "type": "post",
-    "url": "/api/mail/reports/transfer",
-    "title": "Creates a new Mail Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/mail/reports/transfer -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateMail_Transfer_Reports",
-    "group": "Mail_Transfer_Reports",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "uniqueid",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"account\"",
-              "\"agent\"",
-              "\"queue\""
-            ],
-            "optional": false,
-            "field": "type",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "transferredAt",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailTransferReport/index.js",
-    "groupTitle": "Mail_Transfer_Reports"
-  },
-  {
-    "type": "delete",
-    "url": "/api/mail/reports/transfer/{id}",
-    "title": "Deletes a Mail Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/mail/reports/transfer/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteMail_Transfer_Reports",
-    "group": "Mail_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailTransferReport/index.js",
-    "groupTitle": "Mail_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/mail/reports/transfer/describe",
-    "title": "Gets table info about Mail Transfer Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/mail/reports/transfer/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeMail_Transfer_Reports",
-    "group": "Mail_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailTransferReport/index.js",
-    "groupTitle": "Mail_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/mail/reports/transfer",
-    "title": "Gets a list of Mail Transfer Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/mail/reports/transfer -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetMail_Transfer_Reports",
-    "group": "Mail_Transfer_Reports",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/reports/transfer?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/reports/transfer?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/reports/transfer?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/reports/transfer?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/reports/transfer?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailTransferReport/index.js",
-    "groupTitle": "Mail_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/mail/reports/transfer/{id}",
-    "title": "Gets a single Mail Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/mail/reports/transfer/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowMail_Transfer_Reports",
-    "group": "Mail_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailTransferReport/index.js",
-    "groupTitle": "Mail_Transfer_Reports"
-  },
-  {
-    "type": "put",
-    "url": "/api/mail/reports/transfer/{id}",
-    "title": "Update an existing Mail Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/mail/reports/transfer/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateMail_Transfer_Reports",
-    "group": "Mail_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailTransferReport/index.js",
-    "groupTitle": "Mail_Transfer_Reports"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/members/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/members/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/members/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/members/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/members/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/migrations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/migrations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/migrations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/migrations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/migrations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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 -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "Create",
-    "group": "Networks",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/networks?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/networks?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/networks?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/networks?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/networks?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/network/index.js",
-    "groupTitle": "Networks"
-  },
-  {
-    "type": "post",
-    "url": "/api/notifications",
-    "title": "Send notification to user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/notifications -d '{\"text\": \"Hello!\", \"TemplateId\": 1}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "Send",
-    "group": "Notifications",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/notification/index.js",
-    "groupTitle": "Notifications"
-  },
-  {
-    "type": "post",
-    "url": "/api/openchannel/accounts/{id}/users",
-    "title": "Add agents to a openchannel account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/openchannel/accounts/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddAgents",
-    "group": "Openchannel_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelAccount/index.js",
-    "groupTitle": "Openchannel_Accounts"
-  },
-  {
-    "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": "token",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "replyUri",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "key",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "notificationTemplate",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "notificationSound",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "notificationShake",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "waitForTheAssignedAgent",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "mapKey",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "queueTransfer",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "queueTransferTimeout",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "agentTransfer",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "agentTransferTimeout",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "mandatoryDispositionPauseId",
-            "description": "<p>Status to put when mandatory disposition is enabled</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "mandatoryDisposition",
-            "description": "<p>Enabled/disables mandatory dispo on a queue</p>"
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelAccount/index.js",
-    "groupTitle": "Openchannel_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/openchannel/accounts/{id}/users",
-    "title": "Gets agents from openchannel account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/openchannel/accounts/{id}/users -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetAgents",
-    "group": "Openchannel_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelAccount/index.js",
-    "groupTitle": "Openchannel_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/openchannel/accounts/{id}/users",
-    "title": "Removes agents from a openchannel account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/openchannel/accounts/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveAgents",
-    "group": "Openchannel_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelAccount/index.js",
-    "groupTitle": "Openchannel_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/openchannel/accounts/{id}/dispositions",
-    "title": "Removes dispositions from account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/openchannel/accounts/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveDispositions",
-    "group": "Openchannel_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Virtual",
-            "optional": true,
-            "field": "name",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "optional": true,
-            "field": "appdata",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interval",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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\": \"vip\"}' -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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <p>Follow this link to check the documentation: <pre><a target=\"_blank\" href=\"https://wiki.xcallymotion.com/display/XMV/New+Channels+Configuration+Steps#NewChannelsConfigurationSteps-BuildyourownChannelservice\">https://wiki.xcallymotion.com/display/XMV/New+Channels+Configuration+Steps#NewChannelsConfigurationSteps-BuildyourownChannelservice</a></pre></p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelAccount/index.js",
-    "groupTitle": "Openchannel_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/openchannel/accounts/{id}/send",
-    "title": "Send new openchannel message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/openchannel/accounts/{id}/send -d '{from: 'John Doe', body: 'This is a test'}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "sendOpenchannel",
-    "group": "Openchannel_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "optional": true,
-            "field": "appdata",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interval",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/applications?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/applications?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/applications?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/applications?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/applications?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelApplication/index.js",
-    "groupTitle": "Openchannel_Applications"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "from",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/interactions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/interactions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/interactions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/interactions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/interactions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelInteraction/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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelInteraction/index.js",
-    "groupTitle": "Openchannel_Interactions"
-  },
-  {
-    "type": "get",
-    "url": "/api/openchannel/interactions/{id}/download",
-    "title": "Gets interaction",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/openchannel/interactions/{id}/download -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "download",
-    "group": "Openchannel_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/reports/queue?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/reports/queue?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/reports/queue?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/reports/queue?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/reports/queue?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelQueue/index.js",
-    "groupTitle": "Openchannel_Queues"
-  },
-  {
-    "type": "post",
-    "url": "/api/openchannel/reports/transfer",
-    "title": "Creates a new Openchannel Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/openchannel/reports/transfer -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateOpenchannel_Transfer_Reports",
-    "group": "Openchannel_Transfer_Reports",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "uniqueid",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"account\"",
-              "\"agent\"",
-              "\"queue\""
-            ],
-            "optional": false,
-            "field": "type",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "transferredAt",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelTransferReport/index.js",
-    "groupTitle": "Openchannel_Transfer_Reports"
-  },
-  {
-    "type": "delete",
-    "url": "/api/openchannel/reports/transfer/{id}",
-    "title": "Deletes a Openchannel Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/openchannel/reports/transfer/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteOpenchannel_Transfer_Reports",
-    "group": "Openchannel_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelTransferReport/index.js",
-    "groupTitle": "Openchannel_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/openchannel/reports/transfer/describe",
-    "title": "Gets table info about Openchannel Transfer Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/openchannel/reports/transfer/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeOpenchannel_Transfer_Reports",
-    "group": "Openchannel_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelTransferReport/index.js",
-    "groupTitle": "Openchannel_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/openchannel/reports/transfer",
-    "title": "Gets a list of Openchannel Transfer Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/openchannel/reports/transfer -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetOpenchannel_Transfer_Reports",
-    "group": "Openchannel_Transfer_Reports",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/reports/transfer?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/reports/transfer?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/reports/transfer?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/reports/transfer?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/reports/transfer?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelTransferReport/index.js",
-    "groupTitle": "Openchannel_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/openchannel/reports/transfer/{id}",
-    "title": "Gets a single Openchannel Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/openchannel/reports/transfer/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowOpenchannel_Transfer_Reports",
-    "group": "Openchannel_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelTransferReport/index.js",
-    "groupTitle": "Openchannel_Transfer_Reports"
-  },
-  {
-    "type": "put",
-    "url": "/api/openchannel/reports/transfer/{id}",
-    "title": "Update an existing Openchannel Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/openchannel/reports/transfer/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateOpenchannel_Transfer_Reports",
-    "group": "Openchannel_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelTransferReport/index.js",
-    "groupTitle": "Openchannel_Transfer_Reports"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/pauses?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/pauses?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/pauses?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/pauses?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/pauses?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/pause/index.js",
-    "groupTitle": "Pauses"
-  },
-  {
-    "type": "get",
-    "url": "/api/plugins",
-    "title": "Gets a list of Plugins",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/plugins -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetPlugins",
-    "group": "Plugins",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/plugins?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/plugins?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/plugins?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/plugins?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/plugins?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/plugin/index.js",
-    "groupTitle": "Plugins"
-  },
-  {
-    "type": "get",
-    "url": "/api/plugins/{id}",
-    "title": "Gets a single Plugin",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/plugins/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowPlugins",
-    "group": "Plugins",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/plugin/index.js",
-    "groupTitle": "Plugins"
-  },
-  {
-    "type": "delete",
-    "url": "/api/plugins/{id}",
-    "title": "Delete a plugin",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/plugins/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "destroyPlugin",
-    "group": "Plugins",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/plugin/index.js",
-    "groupTitle": "Plugins"
-  },
-  {
-    "type": "get",
-    "url": "/api/plugins/{id}/download",
-    "title": "Download plugin source code",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/plugins/{id}/download -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "download",
-    "group": "Plugins",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/plugin/index.js",
-    "groupTitle": "Plugins"
-  },
-  {
-    "type": "put",
-    "url": "/api/plugins/{id}",
-    "title": "Update an existing plugin",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/plugins/{id} -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updatePlugin",
-    "group": "Plugins",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/plugin/index.js",
-    "groupTitle": "Plugins"
-  },
-  {
-    "type": "post",
-    "url": "/api/plugins",
-    "title": "Upload new plugin",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/plugins -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "uploadPlugin",
-    "group": "Plugins",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/plugin/index.js",
-    "groupTitle": "Plugins"
-  },
-  {
-    "type": "get",
-    "url": "/api/plugins/webhook?hostname={host}&port={port}&encoding={encoding}&json={json}&path={path}",
-    "title": "Redirect a plugin request to the specified path",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/plugins/webhook?port={port}&path={path} -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "webhookPlugin",
-    "group": "Plugins",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/plugin/index.js",
-    "groupTitle": "Plugins"
-  },
-  {
-    "type": "post",
-    "url": "/api/plugins/webhook?hostname={host}&port={port}&encoding={encoding}&json={json}&path={path}",
-    "title": "Redirect a plugin request to the specified path",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/plugins/webhook?port={port}&path={path} -H 'Content-Type: application/json' -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "webhookPlugin",
-    "group": "Plugins",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/plugin/index.js",
-    "groupTitle": "Plugins"
-  },
-  {
-    "type": "delete",
-    "url": "/api/pm2/{id}",
-    "title": "Deletes an existing process",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/pm2/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeletePm2Process",
-    "group": "Pm2",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/pm2/index.js",
-    "groupTitle": "Pm2"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion returns the pm2 processes list.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/pm2/index.js",
-    "groupTitle": "Pm2"
-  },
-  {
-    "type": "post",
-    "url": "/api/pm2",
-    "title": "Start a single pm2 process",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/pm2 -d '{\"name\": \"process_name\", \"script\": \"/index.js\"}'\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "StartPm2Process",
-    "group": "Pm2",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "name",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "script",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "UpdatePm2Process",
-    "group": "Pm2",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime campaigns parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime fax account parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return the current agent capacity.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime agents parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime chat queues parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime fax queues parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime mail account parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime mail queues parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime openchannel queues parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime outbound channels.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime sms queues parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of telephones parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime trunks parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime voice channel mixmonitor.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime voice channel stopmixmonitor.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime voice channels.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a specific realtime voice queue channel.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will hangup a specific realtime voice queue channel.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will redirect a specific realtime voice queue channel to a specific extension.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a specific preview contact.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime outbound parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime voice queues parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime voice queues channels.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/rpc/index.js",
-    "groupTitle": "RPC_Realtime"
-  },
-  {
-    "type": "get",
-    "url": "/api/rpc/chat/queues/{id}",
-    "title": "Gets a single RTChatQueue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/rpc/chat/queues/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowRTChatQueues",
-    "group": "RPC_Realtime",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/rpc/index.js",
-    "groupTitle": "RPC_Realtime"
-  },
-  {
-    "type": "get",
-    "url": "/api/rpc/fax/queues/{id}",
-    "title": "Gets a single RTFaxQueue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/rpc/fax/queues/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowRTFaxQueues",
-    "group": "RPC_Realtime",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/rpc/index.js",
-    "groupTitle": "RPC_Realtime"
-  },
-  {
-    "type": "get",
-    "url": "/api/rpc/mail/queues/{id}",
-    "title": "Gets a single RTMailQueue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/rpc/mail/queues/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowRTMailQueues",
-    "group": "RPC_Realtime",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/rpc/index.js",
-    "groupTitle": "RPC_Realtime"
-  },
-  {
-    "type": "get",
-    "url": "/api/rpc/openchannel/queues/{id}",
-    "title": "Gets a single RTOpenchannelQueue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/rpc/openchannel/queues/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowRTOpenchannelQueues",
-    "group": "RPC_Realtime",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/rpc/index.js",
-    "groupTitle": "RPC_Realtime"
-  },
-  {
-    "type": "get",
-    "url": "/api/rpc/sms/queues/{id}",
-    "title": "Gets a single RTSmsQueue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/rpc/sms/queues/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowRTSmsQueues",
-    "group": "RPC_Realtime",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/rpc/index.js",
-    "groupTitle": "RPC_Realtime"
-  },
-  {
-    "type": "get",
-    "url": "/api/rpc/voice/queues/{id}",
-    "title": "Gets a single RTVoiceQueue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/rpc/voice/queues/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowRTVoiceQueues",
-    "group": "RPC_Realtime",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/rpc/index.js",
-    "groupTitle": "RPC_Realtime"
-  },
-  {
-    "type": "post",
-    "url": "/api/rpc/agents/:id/notify",
-    "title": "Notify message to a specific agent",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/rpc/agents/:id/notify -d '{\"messageId\": \"5080\", \"channel\": \"mail\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "agentNotify",
-    "group": "RPC_Realtime",
-    "description": "<p>Notify message to a specific agent.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/rpc/index.js",
-    "groupTitle": "RPC_Realtime"
-  },
-  {
-    "type": "post",
-    "url": "/api/rpc/chat/queues/:id/notify",
-    "title": "Notify message to a specific queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/rpc/chat/queues/:id/notify -d '{\"messageId\": \"5080\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "chatQueueNotify",
-    "group": "RPC_Realtime",
-    "description": "<p>Notify message to a specific queue.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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/chat/queues/waitinginteractions -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "chatQueuesWaitingInteractions",
-    "group": "RPC_Realtime",
-    "description": "<p>Motion will return a list of realtime waiting chat queues interctions.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/rpc/index.js",
-    "groupTitle": "RPC_Realtime"
-  },
-  {
-    "type": "post",
-    "url": "/api/rpc/fax/queues/:id/notify",
-    "title": "Notify message to a specific queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/rpc/fax/queues/:id/notify -d '{\"messageId\": \"5080\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "faxQueueNotify",
-    "group": "RPC_Realtime",
-    "description": "<p>Notify message to a specific queue.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime waiting fax queues interctions.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/rpc/index.js",
-    "groupTitle": "RPC_Realtime"
-  },
-  {
-    "type": "post",
-    "url": "/api/rpc/mail/queues/:id/notify",
-    "title": "Notify message to a specific queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/rpc/mail/queues/:id/notify -d '{\"messageId\": \"5080\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "mailQueueNotify",
-    "group": "RPC_Realtime",
-    "description": "<p>Notify message to a specific queue.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime waiting mail queues interctions.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/rpc/index.js",
-    "groupTitle": "RPC_Realtime"
-  },
-  {
-    "type": "post",
-    "url": "/api/rpc/openchannel/queues/:id/notify",
-    "title": "Notify message to a specific queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/rpc/openchannel/queues/:id/notify -d '{\"messageId\": \"5080\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "openchannelQueueNotify",
-    "group": "RPC_Realtime",
-    "description": "<p>Notify message to a specific queue.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime waiting openchannel queues interctions.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/rpc/index.js",
-    "groupTitle": "RPC_Realtime"
-  },
-  {
-    "type": "post",
-    "url": "/api/rpc/sms/queues/:id/notify",
-    "title": "Notify message to a specific queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/rpc/sms/queues/:id/notify -d '{\"messageId\": \"5080\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "smsQueueNotify",
-    "group": "RPC_Realtime",
-    "description": "<p>Notify message to a specific queue.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime waiting sms queues interctions.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/salesforce/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/salesforce/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/salesforce/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/salesforce/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/salesforce/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": [
-              "\"Task\"",
-              "\"Case\""
-            ],
-            "optional": true,
-            "field": "ticketType",
-            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/salesforce/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/salesforce/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/salesforce/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/salesforce/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/salesforce/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/salesforce/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/salesforce/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/salesforce/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/salesforce/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/salesforce/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "cc",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "bcc",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "sendIfEmpty",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/schedules?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/schedules?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/schedules?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/schedules?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/schedules?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/schedule/index.js",
-    "groupTitle": "Schedules"
-  },
-  {
-    "type": "get",
-    "url": "/api/schedules/{id}/run",
-    "title": "Run Scheduler",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/schedules/{id}/run -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "run",
-    "group": "Schedules",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/schedule/index.js",
-    "groupTitle": "Schedules"
-  },
-  {
-    "type": "post",
-    "url": "/api/screen/recordings",
-    "title": "Creates a new Recording",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/screen/recordings -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateRecordings",
-    "group": "Screen_Recordings",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "Virtual",
-            "optional": true,
-            "field": "format",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interactionid",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "channel",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "value",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "rating",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "duration",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "startedAt",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "closedAt",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "createdAt",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "updatedAt",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/screenRecording/index.js",
-    "groupTitle": "Screen_Recordings"
-  },
-  {
-    "type": "get",
-    "url": "/api/screen/recordings/describe",
-    "title": "Gets table info about Recordings",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/screen/recordings/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeRecordings",
-    "group": "Screen_Recordings",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/screenRecording/index.js",
-    "groupTitle": "Screen_Recordings"
-  },
-  {
-    "type": "get",
-    "url": "/api/screen/recordings",
-    "title": "Gets a list of Recordings",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/screen/recordings -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetRecordings",
-    "group": "Screen_Recordings",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/screen/recordings?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/screen/recordings?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/screen/recordings?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/screen/recordings?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/screen/recordings?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/screenRecording/index.js",
-    "groupTitle": "Screen_Recordings"
-  },
-  {
-    "type": "get",
-    "url": "/api/screen/recordings/{id}",
-    "title": "Gets a single Recording",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/screen/recordings/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowRecordings",
-    "group": "Screen_Recordings",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/screenRecording/index.js",
-    "groupTitle": "Screen_Recordings"
-  },
-  {
-    "type": "delete",
-    "url": "/api/screen/recordings/{id}",
-    "title": "Delete screen recording",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/screen/recordings/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "destroy",
-    "group": "Screen_Recordings",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/screenRecording/index.js",
-    "groupTitle": "Screen_Recordings"
-  },
-  {
-    "type": "get",
-    "url": "/api/screen/recordings/{id}/download",
-    "title": "Download Recording",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/screen/recordings/{id}/download -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "download",
-    "group": "Screen_Recordings",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/screenRecording/index.js",
-    "groupTitle": "Screen_Recordings"
-  },
-  {
-    "type": "put",
-    "url": "/api/screen/recordings/{id}",
-    "title": "Update an existing Recording",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/screen/recordings/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateRecordings",
-    "group": "Screen_Recordings",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/screenRecording/index.js",
-    "groupTitle": "Screen_Recordings"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/servicenow/accounts",
-    "title": "Creates a new Servicenow Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateServicenow_Accounts",
-    "group": "Servicenow_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": "email",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "remoteUri",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "serverUrl",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowAccount/index.js",
-    "groupTitle": "Servicenow_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/integrations/servicenow/accounts/{id}",
-    "title": "Deletes a Servicenow Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/accounts/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteServicenow_Accounts",
-    "group": "Servicenow_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowAccount/index.js",
-    "groupTitle": "Servicenow_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/servicenow/accounts",
-    "title": "Gets a list of Servicenow Accounts",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/accounts -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetServicenow_Accounts",
-    "group": "Servicenow_Accounts",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/servicenow/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/servicenow/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/servicenow/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/servicenow/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/servicenow/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowAccount/index.js",
-    "groupTitle": "Servicenow_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/servicenow/accounts/{id}",
-    "title": "Gets a single Servicenow Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/accounts/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowServicenow_Accounts",
-    "group": "Servicenow_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowAccount/index.js",
-    "groupTitle": "Servicenow_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/servicenow/accounts/{id}/configurations",
-    "title": "Creates new configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addConfiguration",
-    "group": "Servicenow_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowAccount/index.js",
-    "groupTitle": "Servicenow_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/servicenow/accounts/{id}/configurations",
-    "title": "Gets account configurations",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/accounts/{id}/configurations -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getConfigurations",
-    "group": "Servicenow_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowAccount/index.js",
-    "groupTitle": "Servicenow_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/servicenow/accounts/{id}/fields",
-    "title": "Gets account fields",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/accounts/{id}/fields -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getFields",
-    "group": "Servicenow_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowAccount/index.js",
-    "groupTitle": "Servicenow_Accounts"
-  },
-  {
-    "type": "put",
-    "url": "/api/integrations/servicenow/accounts/{id}",
-    "title": "Update an existing Servicenow Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateServicenow_Accounts",
-    "group": "Servicenow_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowAccount/index.js",
-    "groupTitle": "Servicenow_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/servicenow/configurations",
-    "title": "Creates a new Servicenow Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateServicenow_Configurations",
-    "group": "Servicenow_Configurations",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "name",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowConfiguration/index.js",
-    "groupTitle": "Servicenow_Configurations"
-  },
-  {
-    "type": "delete",
-    "url": "/api/integrations/servicenow/configurations/{id}",
-    "title": "Deletes a Servicenow Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/configurations/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteServicenow_Configurations",
-    "group": "Servicenow_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowConfiguration/index.js",
-    "groupTitle": "Servicenow_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/servicenow/configurations",
-    "title": "Gets a list of Servicenow Configurations",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/configurations -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetServicenow_Configurations",
-    "group": "Servicenow_Configurations",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/servicenow/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/servicenow/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/servicenow/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/servicenow/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/servicenow/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowConfiguration/index.js",
-    "groupTitle": "Servicenow_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/servicenow/configurations/{id}",
-    "title": "Gets a single Servicenow Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/configurations/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowServicenow_Configurations",
-    "group": "Servicenow_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowConfiguration/index.js",
-    "groupTitle": "Servicenow_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/servicenow/configurations/{id}/descriptions",
-    "title": "Gets configurations descriptions",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/configurations/{id}/descriptions -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getDescriptions",
-    "group": "Servicenow_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowConfiguration/index.js",
-    "groupTitle": "Servicenow_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/servicenow/configurations/{id}/fields",
-    "title": "Gets configurations fields",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/configurations/{id}/fields -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getFields",
-    "group": "Servicenow_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowConfiguration/index.js",
-    "groupTitle": "Servicenow_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/servicenow/configurations/{id}/subjects",
-    "title": "Gets configurations subjects",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/configurations/{id}/subjects -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getSubjects",
-    "group": "Servicenow_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowConfiguration/index.js",
-    "groupTitle": "Servicenow_Configurations"
-  },
-  {
-    "type": "put",
-    "url": "/api/integrations/servicenow/configurations/{id}",
-    "title": "Update an existing Servicenow Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateServicenow_Configurations",
-    "group": "Servicenow_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowConfiguration/index.js",
-    "groupTitle": "Servicenow_Configurations"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/servicenow/fields",
-    "title": "Creates a new Servicenow Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateServicenow_Fields",
-    "group": "Servicenow_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowField/index.js",
-    "groupTitle": "Servicenow_Fields"
-  },
-  {
-    "type": "delete",
-    "url": "/api/integrations/servicenow/fields/{id}",
-    "title": "Deletes a Servicenow Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/fields/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteServicenow_Fields",
-    "group": "Servicenow_Fields",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowField/index.js",
-    "groupTitle": "Servicenow_Fields"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/servicenow/fields",
-    "title": "Gets a list of Servicenow Fields",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/fields -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetServicenow_Fields",
-    "group": "Servicenow_Fields",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/servicenow/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/servicenow/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/servicenow/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/servicenow/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/servicenow/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowField/index.js",
-    "groupTitle": "Servicenow_Fields"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/servicenow/fields/{id}",
-    "title": "Gets a single Servicenow Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/fields/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowServicenow_Fields",
-    "group": "Servicenow_Fields",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowField/index.js",
-    "groupTitle": "Servicenow_Fields"
-  },
-  {
-    "type": "put",
-    "url": "/api/integrations/servicenow/fields/{id}",
-    "title": "Update an existing Servicenow Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateServicenow_Fields",
-    "group": "Servicenow_Fields",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowField/index.js",
-    "groupTitle": "Servicenow_Fields"
-  },
-  {
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/settings?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/settings?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/settings?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/settings?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/settings?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/setting/index.js",
-    "groupTitle": "Settings"
-  },
-  {
-    "type": "post",
-    "url": "/api/settings/{id}/favicon",
-    "title": "Add Favicon",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/settings/{id}/favicon -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addFavicon",
-    "group": "Settings",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/setting/index.js",
-    "groupTitle": "Settings"
-  },
-  {
-    "type": "post",
-    "url": "/api/settings/{id}/preferred",
-    "title": "Add Preferred",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/settings/{id}/preferred -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addPreferred",
-    "group": "Settings",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/setting/index.js",
-    "groupTitle": "Settings"
-  },
-  {
-    "type": "get",
-    "url": "/api/settings/{id}/favicon",
-    "title": "Get Favicon",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/settings/{id}/favicon -v -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getFavicon",
-    "group": "Settings",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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 -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getLogo",
-    "group": "Settings",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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 -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getLogoLogin",
-    "group": "Settings",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/setting/index.js",
-    "groupTitle": "Settings"
-  },
-  {
-    "type": "get",
-    "url": "/api/settings/{id}/preferred",
-    "title": "Get Preferred",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/settings/{id}/preferred -v -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getPreferred",
-    "group": "Settings",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/setting/index.js",
-    "groupTitle": "Settings"
-  },
-  {
-    "type": "put",
-    "url": "/api/settings/{id}",
-    "title": "Update an existing Setting",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/settings/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateSettings",
-    "group": "Settings",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/setting/index.js",
-    "groupTitle": "Settings"
-  },
-  {
-    "type": "post",
-    "url": "/api/sms/accounts/{id}/users",
-    "title": "Add agents to a sms account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/sms/accounts/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddAgents",
-    "group": "Sms_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsAccount/index.js",
-    "groupTitle": "Sms_Accounts"
-  },
-  {
-    "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\"",
-              "\"clickatell\"",
-              "\"csc\"",
-              "\"infobip\"",
-              "\"intelepeer\""
-            ],
-            "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": [
-              "\"SI\"",
-              "\"TI\"",
-              "\"GP\""
-            ],
-            "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": "apiKey",
-            "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "notificationTemplate",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "notificationSound",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "notificationShake",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "waitForTheAssignedAgent",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "queueTransfer",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "queueTransferTimeout",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "agentTransfer",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "agentTransferTimeout",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "baseUrl",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "mandatoryDispositionPauseId",
-            "description": "<p>Status to put when mandatory disposition is enabled</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "mandatoryDisposition",
-            "description": "<p>Enabled/disables mandatory dispo on a queue</p>"
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsAccount/index.js",
-    "groupTitle": "Sms_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/sms/accounts/{id}/users",
-    "title": "Gets agents from sms account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/sms/accounts/{id}/users -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetAgents",
-    "group": "Sms_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsAccount/index.js",
-    "groupTitle": "Sms_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/sms/accounts/{id}/users",
-    "title": "Removes agents from a sms account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/sms/accounts/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveAgents",
-    "group": "Sms_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsAccount/index.js",
-    "groupTitle": "Sms_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/sms/accounts/{id}/dispositions",
-    "title": "Removes dispositions from account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/sms/accounts/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveDispositions",
-    "group": "Sms_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Virtual",
-            "optional": true,
-            "field": "name",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "optional": true,
-            "field": "appdata",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interval",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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\": \"vip\"}' -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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <p>This API is used to create a new sms message to be sent to the system.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsMessage/index.js",
-    "groupTitle": "Sms_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/sms/accounts/{id}/status",
-    "title": "Receive message status as get request",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/sms/accounts/{id}/status -H 'Content-Type: application/json' -v -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "statusMessage",
-    "group": "Sms_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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 -H 'Content-Type: application/json' -v -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "statusMessage",
-    "group": "Sms_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "optional": true,
-            "field": "appdata",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interval",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/applications?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/applications?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/applications?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/applications?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/applications?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsApplication/index.js",
-    "groupTitle": "Sms_Applications"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/interactions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/interactions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/interactions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/interactions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/interactions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsInteraction/index.js",
-    "groupTitle": "Sms_Interactions"
-  },
-  {
-    "type": "get",
-    "url": "/api/sms/interactions/{id}/download",
-    "title": "Gets interaction",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/sms/interactions/{id}/download -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "download",
-    "group": "Sms_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/reports/queue?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/reports/queue?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/reports/queue?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/reports/queue?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/reports/queue?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsQueue/index.js",
-    "groupTitle": "Sms_Queues"
-  },
-  {
-    "type": "post",
-    "url": "/api/sms/reports/transfer",
-    "title": "Creates a new Sms Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/sms/reports/transfer -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateSms_Transfer_Reports",
-    "group": "Sms_Transfer_Reports",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "uniqueid",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"account\"",
-              "\"agent\"",
-              "\"queue\""
-            ],
-            "optional": false,
-            "field": "type",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "transferredAt",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsTransferReport/index.js",
-    "groupTitle": "Sms_Transfer_Reports"
-  },
-  {
-    "type": "delete",
-    "url": "/api/sms/reports/transfer/{id}",
-    "title": "Deletes a Sms Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/sms/reports/transfer/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteSms_Transfer_Reports",
-    "group": "Sms_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsTransferReport/index.js",
-    "groupTitle": "Sms_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/sms/reports/transfer/describe",
-    "title": "Gets table info about Sms Transfer Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/sms/reports/transfer/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeSms_Transfer_Reports",
-    "group": "Sms_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsTransferReport/index.js",
-    "groupTitle": "Sms_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/sms/reports/transfer",
-    "title": "Gets a list of Sms Transfer Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/sms/reports/transfer -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetSms_Transfer_Reports",
-    "group": "Sms_Transfer_Reports",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/reports/transfer?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/reports/transfer?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/reports/transfer?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/reports/transfer?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/reports/transfer?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsTransferReport/index.js",
-    "groupTitle": "Sms_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/sms/reports/transfer/{id}",
-    "title": "Gets a single Sms Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/sms/reports/transfer/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowSms_Transfer_Reports",
-    "group": "Sms_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsTransferReport/index.js",
-    "groupTitle": "Sms_Transfer_Reports"
-  },
-  {
-    "type": "put",
-    "url": "/api/sms/reports/transfer/{id}",
-    "title": "Update an existing Sms Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/sms/reports/transfer/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateSms_Transfer_Reports",
-    "group": "Sms_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsTransferReport/index.js",
-    "groupTitle": "Sms_Transfer_Reports"
-  },
-  {
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sounds?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sounds?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sounds?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sounds?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sounds?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/square/details/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/square/details/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/square/details/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/square/details/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/square/details/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/squareReportDetail/index.js",
-    "groupTitle": "Square_Details_Reports"
-  },
-  {
-    "type": "post",
-    "url": "/api/square/messages",
-    "title": "Creates a new Message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/square/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateMessages",
-    "group": "Square_Messages",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "uniqueid",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": false,
-            "field": "body",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"in\"",
-              "\"out\""
-            ],
-            "optional": false,
-            "field": "direction",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/squareMessage/index.js",
-    "groupTitle": "Square_Messages"
-  },
-  {
-    "type": "delete",
-    "url": "/api/square/messages/{id}",
-    "title": "Deletes a Message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/square/messages/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteMessages",
-    "group": "Square_Messages",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/squareMessage/index.js",
-    "groupTitle": "Square_Messages"
-  },
-  {
-    "type": "get",
-    "url": "/api/square/messages",
-    "title": "Gets a list of Messages",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/square/messages -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetMessages",
-    "group": "Square_Messages",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/square/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/square/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/square/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/square/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/square/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/squareMessage/index.js",
-    "groupTitle": "Square_Messages"
-  },
-  {
-    "type": "get",
-    "url": "/api/square/messages/{id}",
-    "title": "Gets a single Message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/square/messages/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowMessages",
-    "group": "Square_Messages",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/squareMessage/index.js",
-    "groupTitle": "Square_Messages"
-  },
-  {
-    "type": "put",
-    "url": "/api/square/messages/{id}",
-    "title": "Update an existing Message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/square/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateMessages",
-    "group": "Square_Messages",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/squareMessage/index.js",
-    "groupTitle": "Square_Messages"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/square/odbc?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/square/odbc?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/square/odbc?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/square/odbc?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/square/odbc?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/square/projects?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/square/projects?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/square/projects?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/square/projects?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/square/projects?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/squareProject/index.js",
-    "groupTitle": "Square_Projects"
-  },
-  {
-    "type": "post",
-    "url": "/api/square/projects/{id}/users",
-    "title": "Adds user permissions to a Project",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/square/projects/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addUsers",
-    "group": "Square_Projects",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/squareProject/index.js",
-    "groupTitle": "Square_Projects"
-  },
-  {
-    "type": "get",
-    "url": "/api/square/projects/{id}/users",
-    "title": "Gets users permissions from Project",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/square/projects/{id}/users -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getUsers",
-    "group": "Square_Projects",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/squareProject/index.js",
-    "groupTitle": "Square_Projects"
-  },
-  {
-    "type": "delete",
-    "url": "/api/square/projects/{id}/users",
-    "title": "Removes user permissions from a Project",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/square/projects/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "removeUsers",
-    "group": "Square_Projects",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Virtual",
-            "optional": true,
-            "field": "format",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/square/recordings?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/square/recordings?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/square/recordings?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/square/recordings?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/square/recordings?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/squareRecording/index.js",
-    "groupTitle": "Square_Recordings"
-  },
-  {
-    "type": "delete",
-    "url": "/api/square/recordings/{id}/delete",
-    "title": "Delete recording",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/square/recordings/{id}/delete -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "destroy",
-    "group": "Square_Recordings",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "bot",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/square/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/square/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/square/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/square/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/square/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/sugarcrm/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/sugarcrm/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/sugarcrm/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/sugarcrm/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/sugarcrm/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/sugarcrm/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/sugarcrm/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/sugarcrm/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/sugarcrm/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/sugarcrm/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/sugarcrm/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/sugarcrm/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/sugarcrm/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/sugarcrm/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/sugarcrm/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intSugarcrmField/index.js",
-    "groupTitle": "Sugarcrm_Fields"
-  },
-  {
-    "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": "<p>Motion returns the system information.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/system/index.js",
-    "groupTitle": "System_Information"
-  },
-  {
-    "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": "<p>Motion returns the system information.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/tags?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/tags?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/tags?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/tags?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/tags?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/teams?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/teams?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/teams?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/teams?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/teams?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/team/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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelQueue/index.js",
-    "groupTitle": "Teams"
-  },
-  {
-    "type": "delete",
-    "url": "/api/whatsapp/queues/{id}/teams",
-    "title": "Remove teams from a queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/queues/{id}/teams -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveTeams",
-    "group": "Teams",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueue/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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsQueue/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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voiceQueue/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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatQueue/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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxQueue/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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/templates?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/templates?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/templates?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/templates?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/templates?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/triggers?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/triggers?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/triggers?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/triggers?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/triggers?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Allowed values: contactManager, integration, motionbar, jscripty, urlForward, browser, bot, script</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "data1",
-            "description": "<p>contactManager[ListId], integration[intName(zendesk)], motionbar[Popup(0),URL(1),WinApp(2)], urlForward[GET,POST], browser[TemplateId(0),URL(1)]</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "data2",
-            "description": "<p>integration[AccountId], motionbar[TemplateId,URL,WinAppPath], urlForward[URL]</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "data3",
-            "description": "<p>motionbar[NULL,NULL,WinAppArguments]</p>"
-          },
-          {
-            "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "data7",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/trigger/index.js",
-    "groupTitle": "Triggers"
-  },
-  {
-    "type": "post",
-    "url": "/api/trunks/clone",
-    "title": "Clone an existing Trunk",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/trunks/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CloneTrunks",
-    "group": "Trunks",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/trunk/index.js",
-    "groupTitle": "Trunks"
-  },
-  {
-    "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": "<p>String is deprecated. Please use an Array as [&quot;udp&quot;, &quot;tcp&quot;]</p>"
-          },
-          {
-            "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": "<p>String is deprecated. Please use an Array as [&quot;force_rport&quot;, &quot;comedia&quot;]</p>"
-          },
-          {
-            "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": "<p>String is deprecated. Please use an Array as [&quot;ulaw&quot;, &quot;alaw&quot;, &quot;alaw&quot;]</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"yes\"",
-              "\"no\""
-            ],
-            "optional": true,
-            "field": "autoframing",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "insecure",
-            "description": "<p>String is deprecated. Please use an Array as [&quot;port&quot;, &quot;invite&quot;]</p>"
-          },
-          {
-            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/trunks?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/trunks?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/trunks?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/trunks?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/trunks?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/trunk/index.js",
-    "groupTitle": "Trunks"
-  },
-  {
-    "type": "post",
-    "url": "/api/userProfile/resources",
-    "title": "Creates a new User Profile Resource",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfile/resources -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateUser_Profile_Resources",
-    "group": "User_Profile_Resources",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "name",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": false,
-            "field": "resourceId",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "type",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfileResource/index.js",
-    "groupTitle": "User_Profile_Resources"
-  },
-  {
-    "type": "delete",
-    "url": "/api/userProfile/resources/{id}",
-    "title": "Deletes a User Profile Resource",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfile/resources/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteUser_Profile_Resources",
-    "group": "User_Profile_Resources",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfileResource/index.js",
-    "groupTitle": "User_Profile_Resources"
-  },
-  {
-    "type": "get",
-    "url": "/api/userProfile/resources/describe",
-    "title": "Gets table info about User Profile Resources",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfile/resources/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeUser_Profile_Resources",
-    "group": "User_Profile_Resources",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfileResource/index.js",
-    "groupTitle": "User_Profile_Resources"
-  },
-  {
-    "type": "get",
-    "url": "/api/userProfile/resources",
-    "title": "Gets a list of User Profile Resources",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfile/resources -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetUser_Profile_Resources",
-    "group": "User_Profile_Resources",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/userProfile/resources?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/userProfile/resources?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/userProfile/resources?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/userProfile/resources?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/userProfile/resources?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfileResource/index.js",
-    "groupTitle": "User_Profile_Resources"
-  },
-  {
-    "type": "get",
-    "url": "/api/userProfile/resources/{id}",
-    "title": "Gets a single User Profile Resource",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfile/resources/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowUser_Profile_Resources",
-    "group": "User_Profile_Resources",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfileResource/index.js",
-    "groupTitle": "User_Profile_Resources"
-  },
-  {
-    "type": "put",
-    "url": "/api/userProfile/resources/{id}",
-    "title": "Update an existing User Profile Resource",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfile/resources/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateUser_Profile_Resources",
-    "group": "User_Profile_Resources",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfileResource/index.js",
-    "groupTitle": "User_Profile_Resources"
-  },
-  {
-    "type": "post",
-    "url": "/api/userProfile/sections",
-    "title": "Creates a new User Profile Section",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfile/sections -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateUser_Profile_Sections",
-    "group": "User_Profile_Sections",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "name",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "category",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": false,
-            "field": "sectionId",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "enabled",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "autoAssociation",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "crudPermissions",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfileSection/index.js",
-    "groupTitle": "User_Profile_Sections"
-  },
-  {
-    "type": "delete",
-    "url": "/api/userProfile/sections/{id}",
-    "title": "Deletes a User Profile Section",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfile/sections/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteUser_Profile_Sections",
-    "group": "User_Profile_Sections",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfileSection/index.js",
-    "groupTitle": "User_Profile_Sections"
-  },
-  {
-    "type": "get",
-    "url": "/api/userProfile/sections/describe",
-    "title": "Gets table info about User Profile Sections",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfile/sections/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeUser_Profile_Sections",
-    "group": "User_Profile_Sections",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfileSection/index.js",
-    "groupTitle": "User_Profile_Sections"
-  },
-  {
-    "type": "get",
-    "url": "/api/userProfile/sections",
-    "title": "Gets a list of User Profile Sections",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfile/sections -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetUser_Profile_Sections",
-    "group": "User_Profile_Sections",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/userProfile/sections?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/userProfile/sections?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/userProfile/sections?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/userProfile/sections?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/userProfile/sections?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfileSection/index.js",
-    "groupTitle": "User_Profile_Sections"
-  },
-  {
-    "type": "get",
-    "url": "/api/userProfile/sections/{id}",
-    "title": "Gets a single User Profile Section",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfile/sections/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowUser_Profile_Sections",
-    "group": "User_Profile_Sections",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfileSection/index.js",
-    "groupTitle": "User_Profile_Sections"
-  },
-  {
-    "type": "put",
-    "url": "/api/userProfile/sections/{id}",
-    "title": "Update an existing User Profile Section",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfile/sections/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateUser_Profile_Sections",
-    "group": "User_Profile_Sections",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfileSection/index.js",
-    "groupTitle": "User_Profile_Sections"
-  },
-  {
-    "type": "post",
-    "url": "/api/userProfiles/{id}/resources",
-    "title": "Add resources' permissions to User Profile",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfiles/{id}/resources -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddResources",
-    "group": "User_Profiles",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfile/index.js",
-    "groupTitle": "User_Profiles"
-  },
-  {
-    "type": "post",
-    "url": "/api/userProfiles/{id}/sections",
-    "title": "Add sections' permissions to User Profile",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfiles/{id}/sections -d '[{\"sectionId\": \"name\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddSections",
-    "group": "User_Profiles",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfile/index.js",
-    "groupTitle": "User_Profiles"
-  },
-  {
-    "type": "post",
-    "url": "/api/userProfiles/clone",
-    "title": "Clone an existing User Profile",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfiles/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CloneUser_Profiles",
-    "group": "User_Profiles",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfile/index.js",
-    "groupTitle": "User_Profiles"
-  },
-  {
-    "type": "post",
-    "url": "/api/userProfiles",
-    "title": "Creates a new User Profile",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfiles -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateUser_Profiles",
-    "group": "User_Profiles",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "name",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "crudPermissions",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfile/index.js",
-    "groupTitle": "User_Profiles"
-  },
-  {
-    "type": "delete",
-    "url": "/api/userProfiles/{id}",
-    "title": "Deletes a User Profile",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfiles/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteUser_Profiles",
-    "group": "User_Profiles",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfile/index.js",
-    "groupTitle": "User_Profiles"
-  },
-  {
-    "type": "get",
-    "url": "/api/userProfiles/describe",
-    "title": "Gets table info about User Profiles",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfiles/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeUser_Profiles",
-    "group": "User_Profiles",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfile/index.js",
-    "groupTitle": "User_Profiles"
-  },
-  {
-    "type": "get",
-    "url": "/api/userProfiles/{id}/resources?section={section}",
-    "title": "Get Resources assigned to a Section",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfiles/{id}/resources?section={section} -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetResources",
-    "group": "User_Profiles",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfile/index.js",
-    "groupTitle": "User_Profiles"
-  },
-  {
-    "type": "get",
-    "url": "/api/userProfiles/{id}/sections",
-    "title": "Get sections associated to a User Profile",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfiles/{id}/sections -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetSections",
-    "group": "User_Profiles",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfile/index.js",
-    "groupTitle": "User_Profiles"
-  },
-  {
-    "type": "get",
-    "url": "/api/userProfiles",
-    "title": "Gets a list of User Profiles",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfiles -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetUser_Profiles",
-    "group": "User_Profiles",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/userProfiles?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/userProfiles?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/userProfiles?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/userProfiles?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/userProfiles?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfile/index.js",
-    "groupTitle": "User_Profiles"
-  },
-  {
-    "type": "delete",
-    "url": "/api/userProfiles/{id}/resources",
-    "title": "Removes resources' permissions from User Profile",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfiles/{id}/resources?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveResources",
-    "group": "User_Profiles",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfile/index.js",
-    "groupTitle": "User_Profiles"
-  },
-  {
-    "type": "delete",
-    "url": "/api/userProfiles/{id}/sections",
-    "title": "Removes sections' permissions from User Profile",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfiles/{id}/sections?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveSections",
-    "group": "User_Profiles",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfile/index.js",
-    "groupTitle": "User_Profiles"
-  },
-  {
-    "type": "get",
-    "url": "/api/userProfiles/{id}",
-    "title": "Gets a single User Profile",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfiles/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowUser_Profiles",
-    "group": "User_Profiles",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfile/index.js",
-    "groupTitle": "User_Profiles"
-  },
-  {
-    "type": "put",
-    "url": "/api/userProfiles/{id}",
-    "title": "Update an existing User Profile",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfiles/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateUser_Profiles",
-    "group": "User_Profiles",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfile/index.js",
-    "groupTitle": "User_Profiles"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/chat_interactions",
-    "title": "Add chat interaction tabs to an agent",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/chat_interactions -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddChatInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/chat_websites",
-    "title": "Add a Chat Website to a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/chat_websites -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddChatWebsites",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/fax_accounts",
-    "title": "Add a Fax Account to a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/fax_accounts -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddFaxAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/fax_interactions",
-    "title": "Add fax interaction tabs to an agent",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/fax_interactions -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddFaxInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/mail_accounts",
-    "title": "Add a Mail Account to a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/mail_accounts -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddMailAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/mail_interactions",
-    "title": "Add mail interaction tabs to an agent",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/mail_interactions -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddMailInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/openchannel_accounts",
-    "title": "Add a Open Channel Account to a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/openchannel_accounts -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddOpenchannelAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/openchannel_interactions",
-    "title": "Add openchannel interaction tabs to an agent",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/openchannel_interactions -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddOpenchannelInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/sms_accounts",
-    "title": "Add a Sms Account to a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/sms_accounts -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddSmsAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/sms_interactions",
-    "title": "Add sms interaction tabs to an agent",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/sms_interactions -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddSmsInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/square_projects",
-    "title": "Add a Square Project to a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/square_projects -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddSquareProjects",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/whatsapp_accounts",
-    "title": "Add a Whatsapp Account to a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/whatsapp_accounts -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddWhatsappAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/whatsapp_interactions",
-    "title": "Add Whatsapp interaction tabs to an agent",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/whatsapp_interactions -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddWhatsappInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>The name of the user</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "fullname",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "alias",
-            "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": "whatsappPause",
-            "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": "whatsappCapacity",
-            "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": "<p>String is deprecated. Please use an Array as [&quot;udp&quot;, &quot;tcp&quot;]</p>"
-          },
-          {
-            "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": "<p>String is deprecated. Please use an Array as [&quot;force_rport&quot;, &quot;comedia&quot;]</p>"
-          },
-          {
-            "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": "<p>String is deprecated. Please use an Array as [&quot;ulaw&quot;, &quot;alaw&quot;, &quot;gsm&quot;]</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"yes\"",
-              "\"no\""
-            ],
-            "optional": true,
-            "field": "autoframing",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "insecure",
-            "description": "<p>String is deprecated. Please use an Array as [&quot;port&quot;, &quot;invite&quot;]</p>"
-          },
-          {
-            "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "phoneBarEnableJaws",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "phoneBarEnableScreenRecordingByAgent",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Virtual",
-            "optional": true,
-            "field": "phoneBarEnableVideoRecording",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "phoneBarEnableAutomaticScreenRecording",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "phoneBarPrefixRequired",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "hotdesk",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interface",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "privacyEnabled",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "apiKeyNonce",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "apiKeyIat",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "screenrecording",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "blocked",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "blockedAt",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "loginAttempts",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "disabled",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/api_key",
-    "title": "Create a new API access key for the user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/:id/api_key -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateApiKey",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetAgents",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "get",
-    "url": "/api/users/{id}/api_key",
-    "title": "Get the API access key for the user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/:id/api_key -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetApiKey",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetChatGroups",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetChatInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "get",
-    "url": "/api/users/{id}/chat_websites",
-    "title": "GetChatWebsites",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/chat_websites -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetChatWebsites",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetContacts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "get",
-    "url": "/api/users/{id}/fax_accounts",
-    "title": "GetFaxAccounts",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/fax_accounts -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetFaxAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetFaxInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetLists",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "get",
-    "url": "/api/users/{id}/mail_accounts",
-    "title": "GetMailAccounts",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/mail_accounts -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetMailAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetMailInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "get",
-    "url": "/api/users/{id}/openchannel_accounts",
-    "title": "GetOpenchannelAccounts",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/openchannel_accounts -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetOpenchannelAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "get",
-    "url": "/api/users/{id}/prefixes",
-    "title": "GetPrefixes",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/prefixes -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetPrefixes",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetQueues",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetRecordings",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "get",
-    "url": "/api/users/{id}/scheduled_calls",
-    "title": "GetScheduledCalls",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/scheduled_calls -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetScheduledCalls",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "get",
-    "url": "/api/users/{id}/screen_recordings",
-    "title": "GetScreenRecordings",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/screen_recordings -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetScreenRecordings",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "get",
-    "url": "/api/users/{id}/sms_accounts",
-    "title": "GetSmsAccounts",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/sms_accounts -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetSmsAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetSmsInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "get",
-    "url": "/api/users/{id}/square_projects",
-    "title": "GetSquareProjects",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/square_projects -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetSquareProjects",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetTeams",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/users?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/users?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/users?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/users?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/users?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetVoiceQueuesRt",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "get",
-    "url": "/api/users/{id}/whatsapp_accounts",
-    "title": "GetWhatsappAccounts",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/whatsapp_accounts -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetWhatsappAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "get",
-    "url": "/api/users/{id}/whatsapp/interactions",
-    "title": "GetWhatsappInteractions",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/whatsapp/interactions -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetWhatsappInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "Login",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "Logout",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "Pause",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/api_key",
-    "title": "Remove API access key for the user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/:id/api_key -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveApiKey",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/chat_interactions",
-    "title": "Removes interactions from an agent",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/chat_interactions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveChatInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/chat_websites",
-    "title": "Removes a Chat Website from a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/chat_websites?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveChatWebsites",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/fax_accounts",
-    "title": "Removes a Fax Account from a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/fax_accounts?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveFaxAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/fax_interactions",
-    "title": "Removes interactions from an agent",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/fax_interactions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveFaxInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/mail_accounts",
-    "title": "Removes a Mail Account from a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/mail_accounts?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveMailAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/mail_interactions",
-    "title": "Removes interactions from an agent",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/mail_interactions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveMailInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/openchannel_accounts",
-    "title": "Removes a Open Channel Account from a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/openchannel_accounts?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveOpenchannelAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/openchannel_interactions",
-    "title": "Removes openchannel interactions from an agent",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/openchannel_interactions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveOpenchannelInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/sms_accounts",
-    "title": "Removes a Sms Account from a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/sms_accounts?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveSmsAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/sms_interactions",
-    "title": "Removes interactions from an agent",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/sms_interactions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveSmsInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/square_projects",
-    "title": "Removes a Square Project from a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/square_projects?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveSquareProjects",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/whatsapp_accounts",
-    "title": "Removes a Whatsapp Account from a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/whatsapp_accounts?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveWhatsappAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/whatsapp_interactions",
-    "title": "Removes Whatsapp interactions from an agent",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/whatsapp_interactions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveWhatsappInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "Unpause",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "get",
-    "url": "/api/users/whoami",
-    "title": "WhoAmI",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/whoami -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "WhoAmI",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/variables?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/variables?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/variables?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/variables?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/variables?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion run the following command: git fetch origin master</p>",
-    "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": "<p>Motion returns the current and latest motion version.</p>",
-    "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": "<p>Motion launch the database migrations, according to the application version</p>",
-    "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": "<p>Motion run the following command: git pull</p>",
-    "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": "<p>Motion run the following command: git reset --hard FETCH_HEAD</p>",
-    "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": "<p>Motion run the following command: pm2 restart motion</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/agents/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/agents/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/agents/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/agents/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/agents/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/calls/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/calls/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/calls/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/calls/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/calls/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/chanspy?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/chanspy?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/chanspy?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/chanspy?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/chanspy?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/contexts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/contexts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/contexts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/contexts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/contexts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/dials/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/dials/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/dials/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/dials/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/dials/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voiceDialReport/index.js",
-    "groupTitle": "Voice_Dial_Reports"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/extensions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/extensions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/extensions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/extensions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/extensions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/mohs?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/mohs?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/mohs?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/mohs?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/mohs?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Integer",
-            "optional": false,
-            "field": "maxsecs",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": false,
-            "field": "maxmsg",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Virtual",
-            "optional": true,
-            "field": "name",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/mails?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/mails?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/mails?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/mails?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/mails?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/mails/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/mails/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/mails/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/mails/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/mails/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voiceMailMessage/index.js",
-    "groupTitle": "Voice_Messages"
-  },
-  {
-    "type": "post",
-    "url": "/api/voice/prefixes/{id}/users",
-    "title": "Add agents to a prefix",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/prefixes/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddAgents",
-    "group": "Voice_Prefixes",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voicePrefix/index.js",
-    "groupTitle": "Voice_Prefixes"
-  },
-  {
-    "type": "delete",
-    "url": "/api/voice/prefixes/{id}",
-    "title": "Deletes a Prefix",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/prefixes/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeletePrefixes",
-    "group": "Voice_Prefixes",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voicePrefix/index.js",
-    "groupTitle": "Voice_Prefixes"
-  },
-  {
-    "type": "get",
-    "url": "/api/voice/prefixes/describe",
-    "title": "Gets table info about Prefixes",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/prefixes/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribePrefixes",
-    "group": "Voice_Prefixes",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voicePrefix/index.js",
-    "groupTitle": "Voice_Prefixes"
-  },
-  {
-    "type": "get",
-    "url": "/api/voice/prefixes/{id}/users",
-    "title": "Gets agents from prefix",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/prefixes/{id}/users -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetAgents",
-    "group": "Voice_Prefixes",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voicePrefix/index.js",
-    "groupTitle": "Voice_Prefixes"
-  },
-  {
-    "type": "get",
-    "url": "/api/voice/prefixes",
-    "title": "Gets a list of Prefixes",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/prefixes -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetPrefixes",
-    "group": "Voice_Prefixes",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/prefixes?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/prefixes?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/prefixes?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/prefixes?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/prefixes?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/voicePrefix/index.js",
-    "groupTitle": "Voice_Prefixes"
-  },
-  {
-    "type": "delete",
-    "url": "/api/voice/prefixes/{id}/users",
-    "title": "Removes agents from a prefix",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/prefixes/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveAgents",
-    "group": "Voice_Prefixes",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voicePrefix/index.js",
-    "groupTitle": "Voice_Prefixes"
-  },
-  {
-    "type": "get",
-    "url": "/api/voice/prefixes/{id}",
-    "title": "Gets a single Prefix",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/prefixes/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowPrefixes",
-    "group": "Voice_Prefixes",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voicePrefix/index.js",
-    "groupTitle": "Voice_Prefixes"
-  },
-  {
-    "type": "put",
-    "url": "/api/voice/prefixes/{id}",
-    "title": "Update an existing prefix",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/prefixes/{id} -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "Update",
-    "group": "Voice_Prefixes",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voicePrefix/index.js",
-    "groupTitle": "Voice_Prefixes"
-  },
-  {
-    "type": "post",
-    "url": "/api/voice/prefixes",
-    "title": "Create a prefix",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/prefixes -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "create",
-    "group": "Voice_Prefixes",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voicePrefix/index.js",
-    "groupTitle": "Voice_Prefixes"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/queues/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/queues/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/queues/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/queues/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/queues/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voiceQueueReport/index.js",
-    "groupTitle": "Voice_Queue_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/voice/queues/reports/index",
-    "title": "Get Voice Queues Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/queues/reports/index -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getVoiceQueuesReport",
-    "group": "Voice_Queue_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voiceQueue/index.js",
-    "groupTitle": "Voice_Queues"
-  },
-  {
-    "type": "post",
-    "url": "/api/voice/queues/clone",
-    "title": "Clone an existing Queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/queues/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CloneQueues",
-    "group": "Voice_Queues",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": [
-              "\"rr\"",
-              "\"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": "Text",
-            "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": "<p>Active/Disactive Campaign</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"preview\"",
-              "\"progressive\"",
-              "\"power\"",
-              "\"predictive\"",
-              "\"booked\""
-            ],
-            "optional": true,
-            "field": "dialMethod",
-            "description": "<p>Dial Method.</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialLimitChannel",
-            "description": "<p>Max 9999 channels, 0 means unlimited.</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialLimitQueue",
-            "description": "<p>Max 9999 member in queue(min:1, max:9999), 0 means unlimited.</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Float",
-            "optional": true,
-            "field": "dialPowerLevel",
-            "description": "<p>Power Level: Calls for agents (min:1, max:10).</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"agentBusyFactor\"",
-              "\"dropRate\""
-            ],
-            "optional": true,
-            "field": "dialPredictiveOptimization",
-            "description": "<p>Only for predictive method.</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Float",
-            "optional": true,
-            "field": "dialPredictiveOptimizationPercentage",
-            "description": "<p>Predictive Optimization Percentage (min: 1, max: 95)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialPredictiveInterval",
-            "description": "<p>Interval Predictive Minutes (min:5 max:30)</p>"
-          },
-          {
-            "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": "<p>Originate Timeout Seconds (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "dialQueueOptions",
-            "description": "<p>https://wiki.asterisk.org/wiki/display/AST/Asterisk+13+Application_Queue</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialQueueTimeout",
-            "description": "<p>Queue Timeout Seconds (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "dialQueueProject",
-            "description": "<p>AGI queue option (use: agi://127.0.0.1/square,&lt;project_name&gt;)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialCongestionMaxRetry",
-            "description": "<p>#Congestion Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialCongestionRetryFrequency",
-            "description": "<p>Congestion Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialBusyMaxRetry",
-            "description": "<p>#Busy Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialBusyRetryFrequency",
-            "description": "<p>Busy Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialNoAnswerMaxRetry",
-            "description": "<p>#NoAnswer Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialNoAnswerRetryFrequency",
-            "description": "<p>NoAnswer Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialGlobalMaxRetry",
-            "description": "<p>#Global Max Retry (min:1, max:999)</p>"
-          },
-          {
-            "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": "<p>Active/Disactive AMD</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDInitialSilence",
-            "description": "<p>#AMD Initial Silence</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDGreeting",
-            "description": "<p>#AMD Greeting</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDAfterGreetingSilence",
-            "description": "<p>#AMD After Greeting Silence</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDTotalAnalysisTime",
-            "description": "<p>#AMD Total Analysis Time</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDMinWordLength",
-            "description": "<p>#AMD Min Word Length</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDBetweenWordsSilence",
-            "description": "<p>#AMD Between Words Silence</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDMaximumNumberOfWords",
-            "description": "<p>#AMD Maximum Number Of Words</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDSilenceThreshold",
-            "description": "<p>#AMD Silence Threshold (min:0, max:32767)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDMaximumWordLength",
-            "description": "<p>#AMD Maximum Word Length</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialRecallMeTimeout",
-            "description": "<p>#RecallMe Timeout (min:1)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "dialRecallInQueue",
-            "description": "<p>Active/Disactive Recall In Queue</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"DESC\"",
-              "\"ASC\""
-            ],
-            "optional": true,
-            "field": "dialOrderByScheduledAt",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "dialQueueProject2",
-            "description": "<p>AGI queue option (use: agi://127.0.0.1/square,&lt;project_name&gt;)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "dialAgiAfterHangupClient",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "dialAgiAfterHangupAgent",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialRandomLastDigitCallerIdNumber",
-            "description": "<p>Random Last Digit (min:1, max:15)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialCutDigit",
-            "description": "<p>Cut Digit (min:1, max:15)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialNoSuchNumberMaxRetry",
-            "description": "<p>#NoSuchNumber Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialNoSuchNumberRetryFrequency",
-            "description": "<p>NoSuchNumber Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialDropMaxRetry",
-            "description": "<p>#Drop Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialDropRetryFrequency",
-            "description": "<p>Drop Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAbandonedMaxRetry",
-            "description": "<p>#Abandoned Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAbandonedRetryFrequency",
-            "description": "<p>Abandoned Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialMachineMaxRetry",
-            "description": "<p>#Machine Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialMachineRetryFrequency",
-            "description": "<p>Machine Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAgentRejectMaxRetry",
-            "description": "<p>#AgentReject Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAgentRejectRetryFrequency",
-            "description": "<p>AgentReject Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "mandatoryDispositionPauseId",
-            "description": "<p>Status to put when mandatory disposition is enabled</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "mandatoryDisposition",
-            "description": "<p>Enabled/disables mandatory dispo on a queue</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialPredictiveIntervalMaxThreshold",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialPredictiveIntervalMinThreshold",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "optional": true,
-            "field": "location",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "transcribeName",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "transcribeStatus",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "fileUri",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "fileText",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "failureReason",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "sentiment",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Float",
-            "optional": true,
-            "field": "sPositive",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Float",
-            "optional": true,
-            "field": "sNegative",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Float",
-            "optional": true,
-            "field": "sNeutral",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Float",
-            "optional": true,
-            "field": "sMixed",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "tempSentiment",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "createdAt",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "updatedAt",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/recordings?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/recordings?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/recordings?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/recordings?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/recordings?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voiceRecording/index.js",
-    "groupTitle": "Voice_Recordings"
-  },
-  {
-    "type": "delete",
-    "url": "/api/voice/recordings/{id}",
-    "title": "Delete voice recording",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/recordings/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "destroy",
-    "group": "Voice_Recordings",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voiceRecording/index.js",
-    "groupTitle": "Voice_Recordings"
-  },
-  {
-    "type": "get",
-    "url": "/api/voice/recordings/{id}/downloads",
-    "title": "Download Recording",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/recordings/{id}/downloads -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "downloads",
-    "group": "Voice_Recordings",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voiceRecording/index.js",
-    "groupTitle": "Voice_Recordings"
-  },
-  {
-    "type": "get",
-    "url": "/api/voice/recordings/{id}/transcribe",
-    "title": "Run Transcribe Recording",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/recordings/{id}/transcribe -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "transcribe",
-    "group": "Voice_Recordings",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voiceRecording/index.js",
-    "groupTitle": "Voice_Recordings"
-  },
-  {
-    "type": "post",
-    "url": "/api/voice/recordings/{id}/transcribe",
-    "title": "Run Transcribe Recording",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/recordings/{id}/transcribe -d '{\"runSentiment\": \"true\"}' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "transcribe",
-    "group": "Voice_Recordings",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/transfers/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/transfers/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/transfers/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/transfers/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/transfers/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voiceTransferReport/index.js",
-    "groupTitle": "Voice_Transfer_Reports"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/vtiger/accounts",
-    "title": "Creates a new Vtiger Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateVtiger_Accounts",
-    "group": "Vtiger_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": false,
-            "field": "username",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "moduleName",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "remoteUri",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "serverUrl",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "accessKey",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerAccount/index.js",
-    "groupTitle": "Vtiger_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/integrations/vtiger/accounts/{id}",
-    "title": "Deletes a Vtiger Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/accounts/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteVtiger_Accounts",
-    "group": "Vtiger_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerAccount/index.js",
-    "groupTitle": "Vtiger_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/vtiger/accounts",
-    "title": "Gets a list of Vtiger Accounts",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/accounts -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetVtiger_Accounts",
-    "group": "Vtiger_Accounts",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/vtiger/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/vtiger/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/vtiger/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/vtiger/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/vtiger/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerAccount/index.js",
-    "groupTitle": "Vtiger_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/vtiger/accounts/{id}",
-    "title": "Gets a single Vtiger Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/accounts/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowVtiger_Accounts",
-    "group": "Vtiger_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerAccount/index.js",
-    "groupTitle": "Vtiger_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/vtiger/accounts/{id}/configurations",
-    "title": "Creates new configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addConfiguration",
-    "group": "Vtiger_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerAccount/index.js",
-    "groupTitle": "Vtiger_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/vtiger/accounts/{id}/configurations",
-    "title": "Gets account configurations",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/accounts/{id}/configurations -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getConfigurations",
-    "group": "Vtiger_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerAccount/index.js",
-    "groupTitle": "Vtiger_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/vtiger/accounts/{id}/fields",
-    "title": "Gets account fields",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/accounts/{id}/fields -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getFields",
-    "group": "Vtiger_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerAccount/index.js",
-    "groupTitle": "Vtiger_Accounts"
-  },
-  {
-    "type": "put",
-    "url": "/api/integrations/vtiger/accounts/{id}",
-    "title": "Update an existing Vtiger Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateVtiger_Accounts",
-    "group": "Vtiger_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerAccount/index.js",
-    "groupTitle": "Vtiger_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/vtiger/configurations",
-    "title": "Creates a new Vtiger Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateVtiger_Configurations",
-    "group": "Vtiger_Configurations",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "name",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerConfiguration/index.js",
-    "groupTitle": "Vtiger_Configurations"
-  },
-  {
-    "type": "delete",
-    "url": "/api/integrations/vtiger/configurations/{id}",
-    "title": "Deletes a Vtiger Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/configurations/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteVtiger_Configurations",
-    "group": "Vtiger_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerConfiguration/index.js",
-    "groupTitle": "Vtiger_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/vtiger/configurations",
-    "title": "Gets a list of Vtiger Configurations",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/configurations -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetVtiger_Configurations",
-    "group": "Vtiger_Configurations",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/vtiger/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/vtiger/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/vtiger/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/vtiger/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/vtiger/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerConfiguration/index.js",
-    "groupTitle": "Vtiger_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/vtiger/configurations/{id}",
-    "title": "Gets a single Vtiger Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/configurations/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowVtiger_Configurations",
-    "group": "Vtiger_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerConfiguration/index.js",
-    "groupTitle": "Vtiger_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/vtiger/configurations/{id}/descriptions",
-    "title": "Gets configurations descriptions",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/configurations/{id}/descriptions -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getDescriptions",
-    "group": "Vtiger_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerConfiguration/index.js",
-    "groupTitle": "Vtiger_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/vtiger/configurations/{id}/fields",
-    "title": "Gets configurations fields",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/configurations/{id}/fields -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getFields",
-    "group": "Vtiger_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerConfiguration/index.js",
-    "groupTitle": "Vtiger_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/vtiger/configurations/{id}/subjects",
-    "title": "Gets configurations subjects",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/configurations/{id}/subjects -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getSubjects",
-    "group": "Vtiger_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerConfiguration/index.js",
-    "groupTitle": "Vtiger_Configurations"
-  },
-  {
-    "type": "put",
-    "url": "/api/integrations/vtiger/configurations/{id}",
-    "title": "Update an existing Vtiger Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateVtiger_Configurations",
-    "group": "Vtiger_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerConfiguration/index.js",
-    "groupTitle": "Vtiger_Configurations"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/vtiger/fields",
-    "title": "Creates a new Vtiger Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateVtiger_Fields",
-    "group": "Vtiger_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerField/index.js",
-    "groupTitle": "Vtiger_Fields"
-  },
-  {
-    "type": "delete",
-    "url": "/api/integrations/vtiger/fields/{id}",
-    "title": "Deletes a Vtiger Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/fields/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteVtiger_Fields",
-    "group": "Vtiger_Fields",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerField/index.js",
-    "groupTitle": "Vtiger_Fields"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/vtiger/fields",
-    "title": "Gets a list of Vtiger Fields",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/fields -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetVtiger_Fields",
-    "group": "Vtiger_Fields",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/vtiger/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/vtiger/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/vtiger/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/vtiger/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/vtiger/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerField/index.js",
-    "groupTitle": "Vtiger_Fields"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/vtiger/fields/{id}",
-    "title": "Gets a single Vtiger Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/fields/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowVtiger_Fields",
-    "group": "Vtiger_Fields",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerField/index.js",
-    "groupTitle": "Vtiger_Fields"
-  },
-  {
-    "type": "put",
-    "url": "/api/integrations/vtiger/fields/{id}",
-    "title": "Update an existing Vtiger Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateVtiger_Fields",
-    "group": "Vtiger_Fields",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerField/index.js",
-    "groupTitle": "Vtiger_Fields"
-  },
-  {
-    "type": "post",
-    "url": "/api/webbar/answer",
-    "title": "answer webrtc call",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/webbar/answer -d '{\"sessionId\": \"<sessionId>\", \"userId\": 54}' \\\n -H \"Content-Type: application/json\" -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "Web_Bar_answer",
-    "group": "WebBar",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "sessionId",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "number",
-            "optional": false,
-            "field": "userId",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/webbar/index.js",
-    "groupTitle": "WebBar"
-  },
-  {
-    "type": "post",
-    "url": "/api/webbar/calls",
-    "title": "webrtc call list",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/webbar/calls -d '{\"userId\": 54}' \\\n -H \"Content-Type: application/json\" -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "Web_Bar_calls",
-    "group": "WebBar",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "number",
-            "optional": false,
-            "field": "userId",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/webbar/index.js",
-    "groupTitle": "WebBar"
-  },
-  {
-    "type": "post",
-    "url": "/api/webbar/hangup",
-    "title": "hangup webrtc call",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/webbar/hangup -d '{\"sessionId\": \"<sessionId>\", \"userId\": 54}' \\\n -H \"Content-Type: application/json\" -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "Web_Bar_hangup",
-    "group": "WebBar",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "sessionId",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "number",
-            "optional": false,
-            "field": "userId",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/webbar/index.js",
-    "groupTitle": "WebBar"
-  },
-  {
-    "type": "post",
-    "url": "/api/webbar/hold",
-    "title": "hold webrtc call",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/webbar/hold -d '{\"sessionId\": \"<sessionId>\", \"userId\": 54}' \\\n -H \"Content-Type: application/json\" -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "Web_Bar_hold",
-    "group": "WebBar",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "sessionId",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "number",
-            "optional": false,
-            "field": "userId",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/webbar/index.js",
-    "groupTitle": "WebBar"
-  },
-  {
-    "type": "post",
-    "url": "/api/webbar/unhold",
-    "title": "unhold webrtc call",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/webbar/unhold -d '{\"sessionId\": \"<sessionId>\", \"userId\": 54}' \\\n -H \"Content-Type: application/json\" -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "Web_Bar_hold",
-    "group": "WebBar",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "sessionId",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "number",
-            "optional": false,
-            "field": "userId",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/webbar/index.js",
-    "groupTitle": "WebBar"
-  },
-  {
-    "type": "post",
-    "url": "/api/webbar/originate",
-    "title": "Originate new webrtc call",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/webbar/originate -d '{\"callNumber\": \"0119692844\", \"userId\": 54}' \\\n -H \"Content-Type: application/json\" -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "Web_Bar_originate",
-    "group": "WebBar",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "callNumber",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "number",
-            "optional": false,
-            "field": "userId",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "callerId",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "callbackUrl",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/webbar/index.js",
-    "groupTitle": "WebBar"
-  },
-  {
-    "type": "post",
-    "url": "/api/webbar/transfer",
-    "title": "blind transfer webrtc call",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/webbar/transfer -d '{\"userId\": 54, \"sessionId\":\"<sessionId>\", \"transferNumber\":\"<transferNumber>\"}' \\\n -H \"Content-Type: application/json\" -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "Web_Bar_transfer",
-    "group": "WebBar",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "number",
-            "optional": false,
-            "field": "userId",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "string",
-            "optional": false,
-            "field": "sessionId",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "string",
-            "optional": false,
-            "field": "transferNumber",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/webbar/index.js",
-    "groupTitle": "WebBar"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/accounts/{id}/users",
-    "title": "Add agents to a whatsapp account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddAgents",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/accounts",
-    "title": "Creates a new Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateAccounts",
-    "group": "Whatsapp_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\""
-            ],
-            "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": "Text",
-            "optional": true,
-            "field": "notificationTemplate",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "notificationSound",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "notificationShake",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "waitForTheAssignedAgent",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "queueTransfer",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "queueTransferTimeout",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "agentTransfer",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "agentTransferTimeout",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "mandatoryDispositionPauseId",
-            "description": "<p>Status to put when mandatory disposition is enabled</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "mandatoryDisposition",
-            "description": "<p>Enabled/disables mandatory dispo on a queue</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/whatsapp/accounts/{id}",
-    "title": "Deletes a Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteAccounts",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/accounts/describe",
-    "title": "Gets table info about Accounts",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeAccounts",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/accounts",
-    "title": "Gets a list of Accounts",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetAccounts",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/accounts/{id}/users",
-    "title": "Gets agents from whatsapp account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/users -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetAgents",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/whatsapp/accounts/{id}/users",
-    "title": "Removes agents from a whatsapp account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveAgents",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/whatsapp/accounts/{id}/canned_answers",
-    "title": "Removes canned answers from account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveAnswers",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/whatsapp/accounts/{id}/dispositions",
-    "title": "Removes dispositions from account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveDispositions",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/accounts/{id}",
-    "title": "Gets a single Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowAccounts",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "put",
-    "url": "/api/whatsapp/messages/{id}/accept",
-    "title": "Accepts message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/messages/{id}/accept \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "acceptMessage",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappMessage/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/accounts/{id}/canned_answers",
-    "title": "Creates new canned answer",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/canned_answers -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addAnswer",
-    "group": "Whatsapp_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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Virtual",
-            "optional": true,
-            "field": "name",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/accounts/{id}/applications",
-    "title": "Creates new applications",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/applications -d '[{\"app\": \"queue\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addApplications",
-    "group": "Whatsapp_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": "Text",
-            "optional": true,
-            "field": "appdata",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interval",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/accounts/{id}/dispositions",
-    "title": "Creates new disposition",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/dispositions -d '{\"name\": \"vip\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addDisposition",
-    "group": "Whatsapp_Accounts",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "name",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/accounts/{id}/canned_answers",
-    "title": "Gets account canned answers",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/canned_answers -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getAnswers",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/accounts/{id}/applications",
-    "title": "Gets account applications",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/applications -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getApplications",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/accounts/{id}/dispositions",
-    "title": "Gets account dispositions",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/dispositions -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getDispositions",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/accounts/{id}/notify",
-    "title": "Notify new message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/notify -d '{\"body\": \"hello world\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "notify",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <p>This API is used to create a new whatsapp message to be sent to the system.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "put",
-    "url": "/api/whatsapp/messages/{id}/reject",
-    "title": "Rejects message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "rejectMessage",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappMessage/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/accounts/{id}/send",
-    "title": "Send new whatsapp message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/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": "sendWhatsapp",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/messages/{id}/status",
-    "title": "Receive message status",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/messages/{id}/status \\ \n -H 'Content-Type: application/json' -v -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "statusMessage",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappMessage/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "put",
-    "url": "/api/whatsapp/accounts/{id}",
-    "title": "Update an existing Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateAccounts",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/applications",
-    "title": "Creates a new Application",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/applications -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateApplications",
-    "group": "Whatsapp_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": "Text",
-            "optional": true,
-            "field": "appdata",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interval",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappApplication/index.js",
-    "groupTitle": "Whatsapp_Applications"
-  },
-  {
-    "type": "delete",
-    "url": "/api/whatsapp/applications/{id}",
-    "title": "Deletes a Application",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/applications/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteApplications",
-    "group": "Whatsapp_Applications",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappApplication/index.js",
-    "groupTitle": "Whatsapp_Applications"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/applications",
-    "title": "Gets a list of Applications",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/applications -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetApplications",
-    "group": "Whatsapp_Applications",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/applications?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/applications?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/applications?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/applications?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/applications?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappApplication/index.js",
-    "groupTitle": "Whatsapp_Applications"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/applications/{id}",
-    "title": "Gets a single Application",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/applications/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowApplications",
-    "group": "Whatsapp_Applications",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappApplication/index.js",
-    "groupTitle": "Whatsapp_Applications"
-  },
-  {
-    "type": "put",
-    "url": "/api/whatsapp/applications/{id}",
-    "title": "Update an existing Application",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/applications/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateApplications",
-    "group": "Whatsapp_Applications",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappApplication/index.js",
-    "groupTitle": "Whatsapp_Applications"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/interactions/{id}/tags",
-    "title": "Add tags to the interaction",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/interaction/{id}/tags -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddTags",
-    "group": "Whatsapp_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappInteraction/index.js",
-    "groupTitle": "Whatsapp_Interactions"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/interactions",
-    "title": "Creates a new Interaction",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/interactions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateInteractions",
-    "group": "Whatsapp_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappInteraction/index.js",
-    "groupTitle": "Whatsapp_Interactions"
-  },
-  {
-    "type": "delete",
-    "url": "/api/whatsapp/interactions/{id}",
-    "title": "Deletes a Interaction",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/interactions/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteInteractions",
-    "group": "Whatsapp_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappInteraction/index.js",
-    "groupTitle": "Whatsapp_Interactions"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/interactions/describe",
-    "title": "Gets table info about Interactions",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/interactions/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeInteractions",
-    "group": "Whatsapp_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappInteraction/index.js",
-    "groupTitle": "Whatsapp_Interactions"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/interactions",
-    "title": "Gets a list of Interactions",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/interactions -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetInteractions",
-    "group": "Whatsapp_Interactions",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/interactions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/interactions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/interactions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/interactions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/interactions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappInteraction/index.js",
-    "groupTitle": "Whatsapp_Interactions"
-  },
-  {
-    "type": "delete",
-    "url": "/api/whatsapp/interactions/{id}/tags",
-    "title": "Removes tags from interaction",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/interactions/{id}/tags?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveTags",
-    "group": "Whatsapp_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappInteraction/index.js",
-    "groupTitle": "Whatsapp_Interactions"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/interactions/{id}",
-    "title": "Gets a single Interaction",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/interactions/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowInteractions",
-    "group": "Whatsapp_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappInteraction/index.js",
-    "groupTitle": "Whatsapp_Interactions"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/interactions/{id}/messages",
-    "title": "Creates new messages",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/interactions/{id}/messages -d '[{\"to\": \"+3901119886500\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addMessage",
-    "group": "Whatsapp_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappInteraction/index.js",
-    "groupTitle": "Whatsapp_Interactions"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/interactions/{id}/download",
-    "title": "Gets interaction",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/interactions/{id}/download -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "download",
-    "group": "Whatsapp_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappInteraction/index.js",
-    "groupTitle": "Whatsapp_Interactions"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/interactions/{id}/messages",
-    "title": "Gets interaction messages",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/interactions/{id}/messages -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getMessages",
-    "group": "Whatsapp_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappInteraction/index.js",
-    "groupTitle": "Whatsapp_Interactions"
-  },
-  {
-    "type": "put",
-    "url": "/api/whatsapp/interactions/{id}",
-    "title": "Update an existing Interaction",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/interactions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateInteractions",
-    "group": "Whatsapp_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappInteraction/index.js",
-    "groupTitle": "Whatsapp_Interactions"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/messages",
-    "title": "Creates a new Message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateMessages",
-    "group": "Whatsapp_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappMessage/index.js",
-    "groupTitle": "Whatsapp_Messages"
-  },
-  {
-    "type": "delete",
-    "url": "/api/whatsapp/messages/{id}",
-    "title": "Deletes a Message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/messages/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteMessages",
-    "group": "Whatsapp_Messages",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappMessage/index.js",
-    "groupTitle": "Whatsapp_Messages"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/messages/describe",
-    "title": "Gets table info about Messages",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/messages/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeMessages",
-    "group": "Whatsapp_Messages",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappMessage/index.js",
-    "groupTitle": "Whatsapp_Messages"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/messages",
-    "title": "Gets a list of Messages",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/messages -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetMessages",
-    "group": "Whatsapp_Messages",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappMessage/index.js",
-    "groupTitle": "Whatsapp_Messages"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/messages/{id}",
-    "title": "Gets a single Message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/messages/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowMessages",
-    "group": "Whatsapp_Messages",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappMessage/index.js",
-    "groupTitle": "Whatsapp_Messages"
-  },
-  {
-    "type": "put",
-    "url": "/api/whatsapp/messages/{id}",
-    "title": "Update an existing Message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateMessages",
-    "group": "Whatsapp_Messages",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappMessage/index.js",
-    "groupTitle": "Whatsapp_Messages"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/reports/queue",
-    "title": "Creates a new Whatsapp Queue Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/reports/queue -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateWhatsapp_Queue_Reports",
-    "group": "Whatsapp_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueueReport/index.js",
-    "groupTitle": "Whatsapp_Queue_Reports"
-  },
-  {
-    "type": "delete",
-    "url": "/api/whatsapp/reports/queue/{id}",
-    "title": "Deletes a Whatsapp Queue Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/reports/queue/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteWhatsapp_Queue_Reports",
-    "group": "Whatsapp_Queue_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueueReport/index.js",
-    "groupTitle": "Whatsapp_Queue_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/reports/queue/describe",
-    "title": "Gets table info about Whatsapp Queue Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/reports/queue/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeWhatsapp_Queue_Reports",
-    "group": "Whatsapp_Queue_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueueReport/index.js",
-    "groupTitle": "Whatsapp_Queue_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/reports/queue",
-    "title": "Gets a list of Whatsapp Queue Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/reports/queue -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetWhatsapp_Queue_Reports",
-    "group": "Whatsapp_Queue_Reports",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/reports/queue?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/reports/queue?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/reports/queue?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/reports/queue?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/reports/queue?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueueReport/index.js",
-    "groupTitle": "Whatsapp_Queue_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/reports/queue/{id}",
-    "title": "Gets a single Whatsapp Queue Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/reports/queue/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowWhatsapp_Queue_Reports",
-    "group": "Whatsapp_Queue_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueueReport/index.js",
-    "groupTitle": "Whatsapp_Queue_Reports"
-  },
-  {
-    "type": "put",
-    "url": "/api/whatsapp/reports/queue/{id}",
-    "title": "Update an existing Whatsapp Queue Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/reports/queue/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateWhatsapp_Queue_Reports",
-    "group": "Whatsapp_Queue_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueueReport/index.js",
-    "groupTitle": "Whatsapp_Queue_Reports"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/queues/{id}/users",
-    "title": "Add agents to a queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/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": "Whatsapp_Queues",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueue/index.js",
-    "groupTitle": "Whatsapp_Queues"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/queues/{id}/teams",
-    "title": "Add teams to a queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddTeams",
-    "group": "Whatsapp_Queues",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueue/index.js",
-    "groupTitle": "Whatsapp_Queues"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/queues",
-    "title": "Creates a new Queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateQueues",
-    "group": "Whatsapp_Queues",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "name",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "timeout",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"rrmemory\"",
-              "\"beepall\"",
-              "\"roundrobin\""
-            ],
-            "optional": true,
-            "field": "strategy",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueue/index.js",
-    "groupTitle": "Whatsapp_Queues"
-  },
-  {
-    "type": "delete",
-    "url": "/api/whatsapp/queues/{id}",
-    "title": "Deletes a Queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/queues/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteQueues",
-    "group": "Whatsapp_Queues",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueue/index.js",
-    "groupTitle": "Whatsapp_Queues"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/queues/describe",
-    "title": "Gets table info about Queues",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/queues/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeQueues",
-    "group": "Whatsapp_Queues",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueue/index.js",
-    "groupTitle": "Whatsapp_Queues"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/queues/{id}/users",
-    "title": "Gets queue agents",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/queues/{id}/users -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "GetAgents",
-    "group": "Whatsapp_Queues",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueue/index.js",
-    "groupTitle": "Whatsapp_Queues"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/queues/{id}/members",
-    "title": "GetMembers",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/queues/{id}/members  -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetMembers",
-    "group": "Whatsapp_Queues",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueue/index.js",
-    "groupTitle": "Whatsapp_Queues"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/queues",
-    "title": "Gets a list of Queues",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/queues -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetQueues",
-    "group": "Whatsapp_Queues",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueue/index.js",
-    "groupTitle": "Whatsapp_Queues"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/queues/{id}/teams",
-    "title": "Gets queues list",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/queues/{id}/teams -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetTeams",
-    "group": "Whatsapp_Queues",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueue/index.js",
-    "groupTitle": "Whatsapp_Queues"
-  },
-  {
-    "type": "delete",
-    "url": "/api/whatsapp/queues/{id}/users",
-    "title": "Removes agents from a queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveAgents",
-    "group": "Whatsapp_Queues",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueue/index.js",
-    "groupTitle": "Whatsapp_Queues"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/queues/{id}",
-    "title": "Gets a single Queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/queues/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowQueues",
-    "group": "Whatsapp_Queues",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueue/index.js",
-    "groupTitle": "Whatsapp_Queues"
-  },
-  {
-    "type": "put",
-    "url": "/api/whatsapp/queues/{id}",
-    "title": "Update an existing Queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateQueues",
-    "group": "Whatsapp_Queues",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueue/index.js",
-    "groupTitle": "Whatsapp_Queues"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/reports/transfer",
-    "title": "Creates a new Whatsapp Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/reports/transfer -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateWhatsapp_Transfer_Reports",
-    "group": "Whatsapp_Transfer_Reports",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "uniqueid",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"account\"",
-              "\"agent\"",
-              "\"queue\""
-            ],
-            "optional": false,
-            "field": "type",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "transferredAt",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappTransferReport/index.js",
-    "groupTitle": "Whatsapp_Transfer_Reports"
-  },
-  {
-    "type": "delete",
-    "url": "/api/whatsapp/reports/transfer/{id}",
-    "title": "Deletes a Whatsapp Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/reports/transfer/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteWhatsapp_Transfer_Reports",
-    "group": "Whatsapp_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappTransferReport/index.js",
-    "groupTitle": "Whatsapp_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/reports/transfer/describe",
-    "title": "Gets table info about Whatsapp Transfer Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/reports/transfer/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeWhatsapp_Transfer_Reports",
-    "group": "Whatsapp_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappTransferReport/index.js",
-    "groupTitle": "Whatsapp_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/reports/transfer",
-    "title": "Gets a list of Whatsapp Transfer Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/reports/transfer -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetWhatsapp_Transfer_Reports",
-    "group": "Whatsapp_Transfer_Reports",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/reports/transfer?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/reports/transfer?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/reports/transfer?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/reports/transfer?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/reports/transfer?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappTransferReport/index.js",
-    "groupTitle": "Whatsapp_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/reports/transfer/{id}",
-    "title": "Gets a single Whatsapp Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/reports/transfer/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowWhatsapp_Transfer_Reports",
-    "group": "Whatsapp_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappTransferReport/index.js",
-    "groupTitle": "Whatsapp_Transfer_Reports"
-  },
-  {
-    "type": "put",
-    "url": "/api/whatsapp/reports/transfer/{id}",
-    "title": "Update an existing Whatsapp Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/reports/transfer/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateWhatsapp_Transfer_Reports",
-    "group": "Whatsapp_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappTransferReport/index.js",
-    "groupTitle": "Whatsapp_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/zendesk/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/zendesk/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/zendesk/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/zendesk/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/zendesk/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/zendesk/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/zendesk/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/zendesk/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/zendesk/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/zendesk/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/zendesk/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/zendesk/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/zendesk/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/zendesk/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/zendesk/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "host",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "zone",
-            "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": "serverUrl",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "code",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "refreshToken",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/zoho/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/zoho/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/zoho/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/zoho/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/zoho/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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",
-            "allowedValues": [
-              "\"lead\"",
-              "\"contact\"",
-              "\"nothing\""
-            ],
-            "optional": true,
-            "field": "moduleCreate",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"contact_lead\"",
-              "\"contact\"",
-              "\"lead\""
-            ],
-            "optional": true,
-            "field": "moduleSearch",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/zoho/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/zoho/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/zoho/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/zoho/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/zoho/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/zoho/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/zoho/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/zoho/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/zoho/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/zoho/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cdr/index.js",
-    "groupTitle": "cdr"
-  },
-  {
-    "type": "get",
-    "url": "/api/cdr/describe",
-    "title": "Gets table info about Cdrs",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cdr/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeCdrs",
-    "group": "cdr",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cdr?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cdr?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cdr?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cdr?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cdr?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "data",
-            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voiceQueuesLog?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voiceQueuesLog?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voiceQueuesLog?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voiceQueuesLog?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voiceQueuesLog?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/analytics/custom_reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/analytics/custom_reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/analytics/custom_reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/analytics/custom_reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/analytics/custom_reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/analytics/default_reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/analytics/default_reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/analytics/default_reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/analytics/default_reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/analytics/default_reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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",
            "optional": false,
            "field": "basename",
            "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": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "reportId",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "reportType",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/analytics/extracted_reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/analytics/extracted_reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/analytics/extracted_reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/analytics/extracted_reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/analytics/extracted_reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "optional": true,
            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "optional": true,
            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/analytics/field_reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/analytics/field_reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/analytics/field_reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/analytics/field_reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/analytics/field_reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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 -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addFields",
    "group": "Analytic_Field_Reports",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/analytics/metrics?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/analytics/metrics?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/analytics/metrics?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/analytics/metrics?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/analytics/metrics?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/analytics/tree_reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/analytics/tree_reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/analytics/tree_reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/analytics/tree_reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/analytics/tree_reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/analyticTreeReport/index.js",
    "groupTitle": "Analytic_Tree_Reports"
  },
  {
    "type": "post",
    "url": "/api/attachments/clone",
    "title": "Clone an existing Attachment",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/attachments/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CloneAttachments",
    "group": "Attachments",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/attachment/index.js",
    "groupTitle": "Attachments"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/attachments?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/attachments?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/attachments?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/attachments?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/attachments?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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\": \"[email-masked]\"}' \\\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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/automations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/automations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/automations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/automations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/automations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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\": \"[email-masked]\", \"...\": \"...\"}]' \\ \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": "<p>Allowed values: contactManager, integration, motionbar, jscripty, urlForward, browser, bot, script</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "data1",
            "description": "<p>contactManager[ListId], integration[intName(zendesk)], motionbar[Popup(0),URL(1),WinApp(2)], urlForward[GET,POST], browser[TemplateId(0),URL(1)]</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "data2",
            "description": "<p>integration[AccountId], motionbar[TemplateId,URL,WinAppPath], urlForward[URL]</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "data3",
            "description": "<p>motionbar[NULL,NULL,WinAppArguments]</p>"
          },
          {
            "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": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "data7",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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\": \"[email-masked]\", \"...\": \"...\"}]' \\ \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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/canned_answers?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/canned_answers?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/canned_answers?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/canned_answers?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/canned_answers?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cannedAnswer/index.js",
    "groupTitle": "Canned_Answers"
  },
  {
    "type": "get",
    "url": "/chat/internal/users",
    "title": "Gets Users Last Messages",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/chat/internal/users -v -u {name}:{password}  -X GET",
        "type": "json"
      }
    ],
    "name": "getLastUsersMessages",
    "group": "ChatInternalMessage",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatInternalMessage/index.js",
    "groupTitle": "ChatInternalMessage"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatApplication/index.js",
    "groupTitle": "Chat_Applications"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/groups?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/groups?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/groups?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/groups?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/groups?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "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": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "closeReason",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "customerPort",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "vidaooSessionId",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/interactions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/interactions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/interactions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/interactions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/interactions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <p>This API is used to set as abandon an interaction and stop the routing.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatInteraction/index.js",
    "groupTitle": "Chat_Interactions"
  },
  {
    "type": "post",
    "url": "/api/chat/interactions/{id}/vidaoo",
    "title": "Create Vidaoo Session",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/interactions/{id}/vidaoo  -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "createVidaooSession",
    "group": "Chat_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatInteraction/index.js",
    "groupTitle": "Chat_Interactions"
  },
  {
    "type": "put",
    "url": "/api/chat/interactions/{id}/custom_update",
    "title": "Update interaction",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/interactions/{id}/custom_update -d '{\"channel\": \"chat\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "customUpdate",
    "group": "Chat_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <p>This API is used to update an interaction.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatInteraction/index.js",
    "groupTitle": "Chat_Interactions"
  },
  {
    "type": "get",
    "url": "/api/chat/interactions/{id}/download",
    "title": "Gets interaction",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/interactions/{id}/download -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "download",
    "group": "Chat_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/internal/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/internal/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/internal/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/internal/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/internal/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/offline_messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/offline_messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/offline_messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/offline_messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/offline_messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/reports/queue?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/reports/queue?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/reports/queue?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/reports/queue?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/reports/queue?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatQueue/index.js",
    "groupTitle": "Chat_Queues"
  },
  {
    "type": "post",
    "url": "/api/chat/reports/transfer",
    "title": "Creates a new Chat Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/reports/transfer -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateChat_Transfer_Reports",
    "group": "Chat_Transfer_Reports",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "uniqueid",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"account\"",
              "\"agent\"",
              "\"queue\""
            ],
            "optional": false,
            "field": "type",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "transferredAt",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatTransferReport/index.js",
    "groupTitle": "Chat_Transfer_Reports"
  },
  {
    "type": "delete",
    "url": "/api/chat/reports/transfer/{id}",
    "title": "Deletes a Chat Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/reports/transfer/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteChat_Transfer_Reports",
    "group": "Chat_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatTransferReport/index.js",
    "groupTitle": "Chat_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/chat/reports/transfer/describe",
    "title": "Gets table info about Chat Transfer Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/reports/transfer/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeChat_Transfer_Reports",
    "group": "Chat_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatTransferReport/index.js",
    "groupTitle": "Chat_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/chat/reports/transfer",
    "title": "Gets a list of Chat Transfer Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/reports/transfer -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetChat_Transfer_Reports",
    "group": "Chat_Transfer_Reports",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/reports/transfer?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/reports/transfer?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/reports/transfer?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/reports/transfer?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/reports/transfer?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/chatTransferReport/index.js",
    "groupTitle": "Chat_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/chat/reports/transfer/{id}",
    "title": "Gets a single Chat Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/reports/transfer/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowChat_Transfer_Reports",
    "group": "Chat_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatTransferReport/index.js",
    "groupTitle": "Chat_Transfer_Reports"
  },
  {
    "type": "put",
    "url": "/api/chat/reports/transfer/{id}",
    "title": "Update an existing Chat Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/reports/transfer/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateChat_Transfer_Reports",
    "group": "Chat_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatTransferReport/index.js",
    "groupTitle": "Chat_Transfer_Reports"
  },
  {
    "type": "post",
    "url": "/api/chat/websites/{id}/users",
    "title": "Add agents to a website",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/websites/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddAgents",
    "group": "Chat_Websites",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatWebsite/index.js",
    "groupTitle": "Chat_Websites"
  },
  {
    "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": true,
            "field": "customerAlias",
            "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": "Boolean",
            "optional": true,
            "field": "enableSendButton",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "feedbackTitle",
            "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": "Boolean",
            "optional": true,
            "field": "enableCustomerCheckmarks",
            "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": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "notificationTemplate",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "notificationSound",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "notificationShake",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "hideWhenOffline",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "agentIdentifier",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "waitForTheAssignedAgent",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "alignment",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "verticalAlignment",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "messagesAlignment",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "defaultTitle",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "customerAvatar",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "showCustomerAvatar",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "messageFontSize",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "backgroundColor",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "queueTransfer",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "queueTransferTimeout",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "agentTransfer",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "agentTransferTimeout",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "systemAlias",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "systemAvatar",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "mandatoryDispositionPauseId",
            "description": "<p>Status to put when mandatory disposition is enabled</p>"
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "mandatoryDisposition",
            "description": "<p>Enabled/disables mandatory dispo on a queue</p>"
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "vidaooEscalation",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "vidaooApiKey",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatWebsite/index.js",
    "groupTitle": "Chat_Websites"
  },
  {
    "type": "get",
    "url": "/api/chat/websites/{id}/users",
    "title": "Gets agents from website",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/websites/{id}/users -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetAgents",
    "group": "Chat_Websites",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/websites?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/websites?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/websites?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/websites?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/websites?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/chatWebsite/index.js",
    "groupTitle": "Chat_Websites"
  },
  {
    "type": "delete",
    "url": "/api/chat/websites/{id}/users",
    "title": "Removes agents from a website",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/websites/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveAgents",
    "group": "Chat_Websites",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatWebsite/index.js",
    "groupTitle": "Chat_Websites"
  },
  {
    "type": "delete",
    "url": "/api/chat/websites/{id}/canned_answers",
    "title": "Removes canned answers from account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/websites/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveAnswers",
    "group": "Chat_Websites",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatWebsite/index.js",
    "groupTitle": "Chat_Websites"
  },
  {
    "type": "delete",
    "url": "/api/chat/websites/{id}/dispositions",
    "title": "Removes canned answers from account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/websites/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveDispositions",
    "group": "Chat_Websites",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": ""
          },
          {
            "group": "Body",
            "type": "Virtual",
            "optional": true,
            "field": "name",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "optional": true,
            "field": "appdata",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interval",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatWebsite/index.js",
    "groupTitle": "Chat_Websites"
  },
  {
    "type": "post",
    "url": "/api/chat/websites/{id}/customer_avatar",
    "title": "Add customer avatar",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/websites/{id}/customer_avatar -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addCustomerAvatar",
    "group": "Chat_Websites",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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\": \"vip\"}' -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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "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": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "closeReason",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "customerPort",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "vidaooSessionId",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatWebsite/index.js",
    "groupTitle": "Chat_Websites"
  },
  {
    "type": "post",
    "url": "/api/chat/websites/{id}/system_avatar",
    "title": "Add system avatar",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/websites/{id}/system_avatar -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addSystemAvatar",
    "group": "Chat_Websites",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatWebsite/index.js",
    "groupTitle": "Chat_Websites"
  },
  {
    "type": "get",
    "url": "/api/chat/websites/{id}/customer_avatar",
    "title": "Get Customer Avatar",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/websites/{id}/customer_avatar -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getCustomerAvatar",
    "group": "Chat_Websites",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatWebsite/index.js",
    "groupTitle": "Chat_Websites"
  },
  {
    "type": "get",
    "url": "/api/chat/websites/{id}/dispositions",
    "title": "Gets account 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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatWebsite/index.js",
    "groupTitle": "Chat_Websites"
  },
  {
    "type": "get",
    "url": "/api/chat/websites/{id}/system_avatar",
    "title": "Get System Avatar",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/websites/{id}/system_avatar -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getSystemAvatar",
    "group": "Chat_Websites",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <p>This API is used to create a new chat message to be sent to the system.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatWebsite/index.js",
    "groupTitle": "Chat_Websites"
  },
  {
    "type": "post",
    "url": "/api/cloudProviders",
    "title": "Creates a new CloudProvider",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cloudProviders -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateCloudProviders",
    "group": "CloudProviders",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "name",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"AmazonAWS\"",
              "\"Google\""
            ],
            "optional": false,
            "field": "service",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "data1",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "data2",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cloudProvider/index.js",
    "groupTitle": "CloudProviders"
  },
  {
    "type": "delete",
    "url": "/api/cloudProviders/{id}",
    "title": "Deletes a CloudProvider",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cloudProviders/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteCloudProviders",
    "group": "CloudProviders",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cloudProvider/index.js",
    "groupTitle": "CloudProviders"
  },
  {
    "type": "get",
    "url": "/api/cloudProviders",
    "title": "Gets a list of CloudProviders",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cloudProviders -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetCloudProviders",
    "group": "CloudProviders",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cloudProviders?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cloudProviders?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cloudProviders?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cloudProviders?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cloudProviders?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/cloudProvider/index.js",
    "groupTitle": "CloudProviders"
  },
  {
    "type": "get",
    "url": "/api/cloudProviders/{id}",
    "title": "Gets a single CloudProvider",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cloudProviders/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowCloudProviders",
    "group": "CloudProviders",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cloudProvider/index.js",
    "groupTitle": "CloudProviders"
  },
  {
    "type": "put",
    "url": "/api/cloudProviders/{id}",
    "title": "Update an existing CloudProvider",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cloudProviders/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateCloudProviders",
    "group": "CloudProviders",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cloudProvider/index.js",
    "groupTitle": "CloudProviders"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cmCompany/index.js",
    "groupTitle": "Cm_Companies"
  },
  {
    "type": "get",
    "url": "/api/cm/companies/describe",
    "title": "Gets table info about Companies",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cm/companies/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeCompanies",
    "group": "Cm_Companies",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/companies?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/companies?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/companies?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/companies?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/companies?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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\": \"[email-masked]\", \"...\": \"...\"}]' \\ \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": "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": true,
            "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": "fb_data",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "twitter",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "skype",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "teams",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "viber",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "line",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "wechat",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "telegram",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "UserId",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "priority",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "scheduledat",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cmContact/index.js",
    "groupTitle": "Cm_Contacts"
  },
  {
    "type": "get",
    "url": "/api/cm/contacts",
    "title": "Gets a list of Contacts",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cm/contacts -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetContacts",
    "group": "Cm_Contacts",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/contacts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/contacts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/contacts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/contacts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/contacts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cmContact/index.js",
    "groupTitle": "Cm_Contacts"
  },
  {
    "type": "post",
    "url": "/api/cm/contacts/create_many",
    "title": "Create Contacts",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cm/contacts/create_many -d '[{\"firstName\": \"John\", \"lastName\": \"doe\", \"...\": \"...\"}]' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "bulkCreate",
    "group": "Cm_Contacts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cmContact/index.js",
    "groupTitle": "Cm_Contacts"
  },
  {
    "type": "get",
    "url": "/api/cm/contacts/{id}/tags",
    "title": "Gets configurations tags",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cm/contacts/{id}/tags -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getTags",
    "group": "Cm_Contacts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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 '{\"from\": 1, \"to\": 2}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "merge",
    "group": "Cm_Contacts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cmContact/index.js",
    "groupTitle": "Cm_Contacts"
  },
  {
    "type": "post",
    "url": "/api/cm/contacts/{id}/tags",
    "title": "Sets new tags",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cm/contacts/{id}/tags -d '{\"ids\": [1,12]}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "setTags",
    "group": "Cm_Contacts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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 '{\"firstName\": \"John\", \"lastName\": \"Doe\"}' -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "update",
    "group": "Cm_Contacts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/custom_fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/custom_fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/custom_fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/custom_fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/custom_fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "countnosuchnumberretry",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "countdropretry",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "countabandonedretry",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "countmachineretry",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "countagentrejectretry",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/hopper?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/hopper?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/hopper?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/hopper?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/hopper?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/hopper_black?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/hopper_black?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/hopper_black?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/hopper_black?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/hopper_black?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/hopper_final?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/hopper_final?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/hopper_final?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/hopper_final?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/hopper_final?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "_checkContactHopper",
    "group": "Cm_Hopper_Final",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "originatecalleridnum",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "originatecalleridname",
            "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": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "countnosuchnumberretry",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "countdropretry",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "countabandonedretry",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "countmachineretry",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "countagentrejectretry",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/hopper_history?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/hopper_history?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/hopper_history?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/hopper_history?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/hopper_history?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "dialPrefix",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cmList/index.js",
    "groupTitle": "Cm_Lists"
  },
  {
    "type": "get",
    "url": "/api/cm/lists/describe",
    "title": "Gets table info about Lists",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cm/lists/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeLists",
    "group": "Cm_Lists",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/lists?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/lists?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/lists?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/lists?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/lists?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cmList/index.js",
    "groupTitle": "Cm_Lists"
  },
  {
    "type": "delete",
    "url": "/api/cm/lists/{id}/dispositions",
    "title": "Removes dispositions from account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cm/lists/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveDispositions",
    "group": "Cm_Lists",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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\": \"[email-masked]\", \"...\": \"...\"}]' \\ \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": "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": true,
            "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": "fb_data",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "twitter",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "skype",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "teams",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "viber",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "line",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "wechat",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "telegram",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "UserId",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "priority",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "scheduledat",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cmList/index.js",
    "groupTitle": "Cm_Lists"
  },
  {
    "type": "post",
    "url": "/api/cm/lists/{id}/dispositions",
    "title": "Creates new disposition",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cm/lists/{id}/dispositions -d '{\"name\": \"vip\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addDisposition",
    "group": "Cm_Lists",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "name",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cmList/index.js",
    "groupTitle": "Cm_Lists"
  },
  {
    "type": "get",
    "url": "/api/cm/lists/{id}/dispositions",
    "title": "Gets list 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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cmList/index.js",
    "groupTitle": "Cm_Lists"
  },
  {
    "type": "post",
    "url": "/api/cm/contacts/upload/:id",
    "title": "Import new contacts by csv",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cm/contacts/upload/:id -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "import",
    "group": "Cm_contacts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cmContact/index.js",
    "groupTitle": "Cm_contacts"
  },
  {
    "type": "post",
    "url": "/api/cm/contacts/upload",
    "title": "Upload csv",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cm/contacts/upload -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "upload",
    "group": "Cm_contacts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cmContact/index.js",
    "groupTitle": "Cm_contacts"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/dashboards?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/dashboards?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/dashboards?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/dashboards?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/dashboards?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Dashboards",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/dashboard/index.js",
    "groupTitle": "Dashboards"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/desk/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/desk/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/desk/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/desk/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/desk/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/desk/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/desk/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/desk/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/desk/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/desk/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/desk/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/desk/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/desk/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/desk/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/desk/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDeskField/index.js",
    "groupTitle": "Desk_Fields"
  },
  {
    "type": "post",
    "url": "/api/dispositions",
    "title": "Creates a new Disposition",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateDispositions",
    "group": "Dispositions",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "name",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/disposition/index.js",
    "groupTitle": "Dispositions"
  },
  {
    "type": "delete",
    "url": "/api/dispositions/{id}",
    "title": "Deletes a Disposition",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/dispositions/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteDispositions",
    "group": "Dispositions",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/disposition/index.js",
    "groupTitle": "Dispositions"
  },
  {
    "type": "get",
    "url": "/api/dispositions",
    "title": "Gets a list of Dispositions",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/dispositions -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetDispositions",
    "group": "Dispositions",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/dispositions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/dispositions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/dispositions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/dispositions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/dispositions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/disposition/index.js",
    "groupTitle": "Dispositions"
  },
  {
    "type": "get",
    "url": "/api/dispositions/{id}",
    "title": "Gets a single Disposition",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/dispositions/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowDispositions",
    "group": "Dispositions",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/disposition/index.js",
    "groupTitle": "Dispositions"
  },
  {
    "type": "put",
    "url": "/api/dispositions/{id}",
    "title": "Update an existing Disposition",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateDispositions",
    "group": "Dispositions",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/disposition/index.js",
    "groupTitle": "Dispositions"
  },
  {
    "type": "post",
    "url": "/api/integrations/dynamics365/accounts",
    "title": "Creates a new Dynamics365 Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateDynamics365_Accounts",
    "group": "Dynamics365_Accounts",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "name",
            "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": "tenantId",
            "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": "serverUrl",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Account/index.js",
    "groupTitle": "Dynamics365_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/integrations/dynamics365/accounts/{id}",
    "title": "Deletes a Dynamics365 Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/accounts/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteDynamics365_Accounts",
    "group": "Dynamics365_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Account/index.js",
    "groupTitle": "Dynamics365_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/dynamics365/accounts",
    "title": "Gets a list of Dynamics365 Accounts",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/accounts -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetDynamics365_Accounts",
    "group": "Dynamics365_Accounts",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/dynamics365/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/dynamics365/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/dynamics365/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/dynamics365/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/dynamics365/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Account/index.js",
    "groupTitle": "Dynamics365_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/dynamics365/accounts/{id}",
    "title": "Gets a single Dynamics365 Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/accounts/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowDynamics365_Accounts",
    "group": "Dynamics365_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Account/index.js",
    "groupTitle": "Dynamics365_Accounts"
  },
  {
    "type": "post",
    "url": "/api/integrations/dynamics365/accounts/{id}/configurations",
    "title": "Creates new configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addConfiguration",
    "group": "Dynamics365_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Account/index.js",
    "groupTitle": "Dynamics365_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/dynamics365/accounts/{id}/configurations",
    "title": "Gets account configurations",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/accounts/{id}/configurations -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getConfigurations",
    "group": "Dynamics365_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Account/index.js",
    "groupTitle": "Dynamics365_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/dynamics365/accounts/{id}/fields",
    "title": "Gets account fields",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/accounts/{id}/fields -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getFields",
    "group": "Dynamics365_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Account/index.js",
    "groupTitle": "Dynamics365_Accounts"
  },
  {
    "type": "put",
    "url": "/api/integrations/dynamics365/accounts/{id}",
    "title": "Update an existing Dynamics365 Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateDynamics365_Accounts",
    "group": "Dynamics365_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Account/index.js",
    "groupTitle": "Dynamics365_Accounts"
  },
  {
    "type": "post",
    "url": "/api/integrations/dynamics365/configurations",
    "title": "Creates a new Dynamics365 Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateDynamics365_Configurations",
    "group": "Dynamics365_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": [
              "\"incident\"",
              "\"phonecall\""
            ],
            "optional": true,
            "field": "ticketType",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Configuration/index.js",
    "groupTitle": "Dynamics365_Configurations"
  },
  {
    "type": "delete",
    "url": "/api/integrations/dynamics365/configurations/{id}",
    "title": "Deletes a Dynamics365 Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/configurations/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteDynamics365_Configurations",
    "group": "Dynamics365_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Configuration/index.js",
    "groupTitle": "Dynamics365_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/dynamics365/configurations",
    "title": "Gets a list of Dynamics365 Configurations",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/configurations -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetDynamics365_Configurations",
    "group": "Dynamics365_Configurations",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/dynamics365/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/dynamics365/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/dynamics365/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/dynamics365/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/dynamics365/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Configuration/index.js",
    "groupTitle": "Dynamics365_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/dynamics365/configurations/{id}",
    "title": "Gets a single Dynamics365 Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/configurations/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowDynamics365_Configurations",
    "group": "Dynamics365_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Configuration/index.js",
    "groupTitle": "Dynamics365_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/dynamics365/configurations/{id}/descriptions",
    "title": "Gets configurations descriptions",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/configurations/{id}/descriptions -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getDescriptions",
    "group": "Dynamics365_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Configuration/index.js",
    "groupTitle": "Dynamics365_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/dynamics365/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": "Dynamics365_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Configuration/index.js",
    "groupTitle": "Dynamics365_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/zoho/configurations/{id}/subjects",
    "title": "Gets configurations subjects",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/configurations/{id}/subjects -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getSubjects",
    "group": "Dynamics365_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Configuration/index.js",
    "groupTitle": "Dynamics365_Configurations"
  },
  {
    "type": "put",
    "url": "/api/integrations/dynamics365/configurations/{id}",
    "title": "Update an existing Dynamics365 Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateDynamics365_Configurations",
    "group": "Dynamics365_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Configuration/index.js",
    "groupTitle": "Dynamics365_Configurations"
  },
  {
    "type": "post",
    "url": "/api/integrations/dynamics365/fields",
    "title": "Creates a new Dynamics365 Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateDynamics365_Fields",
    "group": "Dynamics365_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Field/index.js",
    "groupTitle": "Dynamics365_Fields"
  },
  {
    "type": "delete",
    "url": "/api/integrations/dynamics365/fields/{id}",
    "title": "Deletes a Dynamics365 Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/fields/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteDynamics365_Fields",
    "group": "Dynamics365_Fields",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Field/index.js",
    "groupTitle": "Dynamics365_Fields"
  },
  {
    "type": "get",
    "url": "/api/integrations/dynamics365/fields",
    "title": "Gets a list of Dynamics365 Fields",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/fields -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetDynamics365_Fields",
    "group": "Dynamics365_Fields",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/dynamics365/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/dynamics365/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/dynamics365/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/dynamics365/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/dynamics365/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Field/index.js",
    "groupTitle": "Dynamics365_Fields"
  },
  {
    "type": "get",
    "url": "/api/integrations/dynamics365/fields/{id}",
    "title": "Gets a single Dynamics365 Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/fields/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowDynamics365_Fields",
    "group": "Dynamics365_Fields",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Field/index.js",
    "groupTitle": "Dynamics365_Fields"
  },
  {
    "type": "put",
    "url": "/api/integrations/dynamics365/fields/{id}",
    "title": "Update an existing Dynamics365 Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateDynamics365_Fields",
    "group": "Dynamics365_Fields",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Field/index.js",
    "groupTitle": "Dynamics365_Fields"
  },
  {
    "type": "post",
    "url": "/api/fax/accounts/{id}/users",
    "title": "Add agents to a fax account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/fax/accounts/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddAgents",
    "group": "Fax_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxAccount/index.js",
    "groupTitle": "Fax_Accounts"
  },
  {
    "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": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "notificationTemplate",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "notificationSound",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "notificationShake",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "waitForTheAssignedAgent",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "queueTransfer",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "queueTransferTimeout",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "agentTransfer",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "agentTransferTimeout",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "mandatoryDispositionPauseId",
            "description": "<p>Status to put when mandatory disposition is enabled</p>"
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "mandatoryDisposition",
            "description": "<p>Enabled/disables mandatory dispo on a queue</p>"
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/faxAccount/index.js",
    "groupTitle": "Fax_Accounts"
  },
  {
    "type": "get",
    "url": "/api/fax/accounts/{id}/users",
    "title": "Gets agents from fax account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/fax/accounts/{id}/users -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetAgents",
    "group": "Fax_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxAccount/index.js",
    "groupTitle": "Fax_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/fax/accounts/{id}/users",
    "title": "Removes agents from a fax account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/fax/accounts/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveAgents",
    "group": "Fax_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxAccount/index.js",
    "groupTitle": "Fax_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/fax/accounts/{id}/dispositions",
    "title": "Removes dispositions from account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/fax/accounts/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveDispositions",
    "group": "Fax_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": ""
          },
          {
            "group": "Body",
            "type": "Virtual",
            "optional": true,
            "field": "name",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "optional": true,
            "field": "appdata",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interval",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "optional": true,
            "field": "appdata",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interval",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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\": \"vip\"}' -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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "optional": true,
            "field": "appdata",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interval",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "optional": true,
            "field": "appdata",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interval",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/applications?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/applications?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/applications?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/applications?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/applications?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxApplication/index.js",
    "groupTitle": "Fax_Applications"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/interactions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/interactions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/interactions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/interactions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/interactions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxInteraction/index.js",
    "groupTitle": "Fax_Interactions"
  },
  {
    "type": "get",
    "url": "/api/fax/interactions/{id}/download",
    "title": "Get interactions",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/fax/interactions/{id}/download -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "download",
    "group": "Fax_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxInteraction/index.js",
    "groupTitle": "Fax_Interactions"
  },
  {
    "type": "get",
    "url": "/api/fax/messages/{id}/download",
    "title": "Get message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/fax/messages/{id}/download -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "download",
    "group": "Fax_Message",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxMessage/index.js",
    "groupTitle": "Fax_Message"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/reports/queue?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/reports/queue?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/reports/queue?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/reports/queue?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/reports/queue?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxQueue/index.js",
    "groupTitle": "Fax_Queues"
  },
  {
    "type": "post",
    "url": "/api/fax/reports/transfer",
    "title": "Creates a new Fax Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/fax/reports/transfer -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateFax_Transfer_Reports",
    "group": "Fax_Transfer_Reports",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "uniqueid",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"account\"",
              "\"agent\"",
              "\"queue\""
            ],
            "optional": false,
            "field": "type",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "transferredAt",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxTransferReport/index.js",
    "groupTitle": "Fax_Transfer_Reports"
  },
  {
    "type": "delete",
    "url": "/api/fax/reports/transfer/{id}",
    "title": "Deletes a Fax Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/fax/reports/transfer/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteFax_Transfer_Reports",
    "group": "Fax_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxTransferReport/index.js",
    "groupTitle": "Fax_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/fax/reports/transfer/describe",
    "title": "Gets table info about Fax Transfer Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/fax/reports/transfer/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeFax_Transfer_Reports",
    "group": "Fax_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxTransferReport/index.js",
    "groupTitle": "Fax_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/fax/reports/transfer",
    "title": "Gets a list of Fax Transfer Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/fax/reports/transfer -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetFax_Transfer_Reports",
    "group": "Fax_Transfer_Reports",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/reports/transfer?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/reports/transfer?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/reports/transfer?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/reports/transfer?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/reports/transfer?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/faxTransferReport/index.js",
    "groupTitle": "Fax_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/fax/reports/transfer/{id}",
    "title": "Gets a single Fax Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/fax/reports/transfer/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowFax_Transfer_Reports",
    "group": "Fax_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxTransferReport/index.js",
    "groupTitle": "Fax_Transfer_Reports"
  },
  {
    "type": "put",
    "url": "/api/fax/reports/transfer/{id}",
    "title": "Update an existing Fax Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/fax/reports/transfer/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateFax_Transfer_Reports",
    "group": "Fax_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxTransferReport/index.js",
    "groupTitle": "Fax_Transfer_Reports"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/freshdesk/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/freshdesk/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/freshdesk/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/freshdesk/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/freshdesk/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/freshdesk/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/freshdesk/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/freshdesk/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/freshdesk/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/freshdesk/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/freshdesk/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/freshdesk/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/freshdesk/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/freshdesk/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/freshdesk/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshdeskField/index.js",
    "groupTitle": "Freshdesk_Fields"
  },
  {
    "type": "post",
    "url": "/api/integrations/freshsales/accounts",
    "title": "Creates a new Freshsales Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateFreshsales_Accounts",
    "group": "Freshsales_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesAccount/index.js",
    "groupTitle": "Freshsales_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/integrations/freshsales/accounts/{id}",
    "title": "Deletes a Freshsales Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/accounts/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteFreshsales_Accounts",
    "group": "Freshsales_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesAccount/index.js",
    "groupTitle": "Freshsales_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/freshsales/accounts",
    "title": "Gets a list of Freshsales Accounts",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/accounts -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetFreshsales_Accounts",
    "group": "Freshsales_Accounts",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/freshsales/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/freshsales/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/freshsales/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/freshsales/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/freshsales/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesAccount/index.js",
    "groupTitle": "Freshsales_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/freshsales/accounts/{id}",
    "title": "Gets a single Freshsales Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/accounts/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowFreshsales_Accounts",
    "group": "Freshsales_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesAccount/index.js",
    "groupTitle": "Freshsales_Accounts"
  },
  {
    "type": "post",
    "url": "/api/integrations/freshsales/accounts/{id}/configurations",
    "title": "Creates new configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addConfiguration",
    "group": "Freshsales_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesAccount/index.js",
    "groupTitle": "Freshsales_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/freshsales/accounts/{id}/configurations",
    "title": "Gets account configurations",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/accounts/{id}/configurations -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getConfigurations",
    "group": "Freshsales_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesAccount/index.js",
    "groupTitle": "Freshsales_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/freshsales/accounts/{id}/fields",
    "title": "Gets account fields",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/accounts/{id}/fields -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getFields",
    "group": "Freshsales_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesAccount/index.js",
    "groupTitle": "Freshsales_Accounts"
  },
  {
    "type": "put",
    "url": "/api/integrations/freshsales/accounts/{id}",
    "title": "Update an existing Freshsales Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateFreshsales_Accounts",
    "group": "Freshsales_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesAccount/index.js",
    "groupTitle": "Freshsales_Accounts"
  },
  {
    "type": "post",
    "url": "/api/integrations/freshsales/configurations",
    "title": "Creates a new Freshsales Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateFreshsales_Configurations",
    "group": "Freshsales_Configurations",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "name",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesConfiguration/index.js",
    "groupTitle": "Freshsales_Configurations"
  },
  {
    "type": "delete",
    "url": "/api/integrations/freshsales/configurations/{id}",
    "title": "Deletes a Freshsales Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/configurations/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteFreshsales_Configurations",
    "group": "Freshsales_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesConfiguration/index.js",
    "groupTitle": "Freshsales_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/freshsales/configurations",
    "title": "Gets a list of Freshsales Configurations",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/configurations -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetFreshsales_Configurations",
    "group": "Freshsales_Configurations",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/freshsales/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/freshsales/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/freshsales/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/freshsales/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/freshsales/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesConfiguration/index.js",
    "groupTitle": "Freshsales_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/freshsales/configurations/{id}",
    "title": "Gets a single Freshsales Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/configurations/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowFreshsales_Configurations",
    "group": "Freshsales_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesConfiguration/index.js",
    "groupTitle": "Freshsales_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/freshsales/configurations/{id}/descriptions",
    "title": "Gets configurations descriptions",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/configurations/{id}/descriptions -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getDescriptions",
    "group": "Freshsales_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesConfiguration/index.js",
    "groupTitle": "Freshsales_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/freshsales/configurations/{id}/fields",
    "title": "Gets configurations fields",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/configurations/{id}/fields -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getFields",
    "group": "Freshsales_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesConfiguration/index.js",
    "groupTitle": "Freshsales_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/freshsales/configurations/{id}/subjects",
    "title": "Gets configurations subjects",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/configurations/{id}/subjects -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getSubjects",
    "group": "Freshsales_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesConfiguration/index.js",
    "groupTitle": "Freshsales_Configurations"
  },
  {
    "type": "put",
    "url": "/api/integrations/freshsales/configurations/{id}",
    "title": "Update an existing Freshsales Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateFreshsales_Configurations",
    "group": "Freshsales_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesConfiguration/index.js",
    "groupTitle": "Freshsales_Configurations"
  },
  {
    "type": "post",
    "url": "/api/integrations/freshsales/fields",
    "title": "Creates a new Freshsales Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateFreshsales_Fields",
    "group": "Freshsales_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesField/index.js",
    "groupTitle": "Freshsales_Fields"
  },
  {
    "type": "delete",
    "url": "/api/integrations/freshsales/fields/{id}",
    "title": "Deletes a Freshsales Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/fields/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteFreshsales_Fields",
    "group": "Freshsales_Fields",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesField/index.js",
    "groupTitle": "Freshsales_Fields"
  },
  {
    "type": "get",
    "url": "/api/integrations/freshsales/fields",
    "title": "Gets a list of Freshsales Fields",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/fields -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetFreshsales_Fields",
    "group": "Freshsales_Fields",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/freshsales/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/freshsales/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/freshsales/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/freshsales/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/freshsales/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesField/index.js",
    "groupTitle": "Freshsales_Fields"
  },
  {
    "type": "get",
    "url": "/api/integrations/freshsales/fields/{id}",
    "title": "Gets a single Freshsales Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/fields/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowFreshsales_Fields",
    "group": "Freshsales_Fields",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesField/index.js",
    "groupTitle": "Freshsales_Fields"
  },
  {
    "type": "put",
    "url": "/api/integrations/freshsales/fields/{id}",
    "title": "Update an existing Freshsales Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateFreshsales_Fields",
    "group": "Freshsales_Fields",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesField/index.js",
    "groupTitle": "Freshsales_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/campaign/index.js",
    "groupTitle": "IVR_Campaigns"
  },
  {
    "type": "post",
    "url": "/api/campaigns/clone",
    "title": "Clone an existing IVR Campaign",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/campaigns/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CloneIVR_Campaigns",
    "group": "IVR_Campaigns",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Active/Disactive Campaign</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "limitCalls",
            "description": "<p>Max 200 calls.</p>"
          },
          {
            "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": "<p>Originate Timeout Seconds (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialCongestionMaxRetry",
            "description": "<p>#Congestion Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialCongestionRetryFrequency",
            "description": "<p>Congestion Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialBusyMaxRetry",
            "description": "<p>#Busy Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialBusyRetryFrequency",
            "description": "<p>Busy Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialNoAnswerMaxRetry",
            "description": "<p>#NoAnswer Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialNoAnswerRetryFrequency",
            "description": "<p>NoAnswer Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialGlobalMaxRetry",
            "description": "<p>#Global Max Retry (min:1, max:999)</p>"
          },
          {
            "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": "<p>Active/Disactive AMD</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDInitialSilence",
            "description": "<p>#AMD Initial Silence</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDGreeting",
            "description": "<p>#AMD Greeting</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDAfterGreetingSilence",
            "description": "<p>#AMD After Greeting Silence</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDTotalAnalysisTime",
            "description": "<p>#AMD Total Analysis Time</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDMinWordLength",
            "description": "<p>#AMD Min Word Length</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDBetweenWordsSilence",
            "description": "<p>#AMD Between Words Silence</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDMaximumNumberOfWords",
            "description": "<p>#AMD Maximum Number Of Words</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDSilenceThreshold",
            "description": "<p>#AMD Silence Threshold (min:0, max:32767)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDMaximumWordLength",
            "description": "<p>#AMD Maximum Word Length</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"DESC\"",
              "\"ASC\""
            ],
            "optional": true,
            "field": "dialOrderByScheduledAt",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "dialPrefix",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialRandomLastDigitCallerIdNumber",
            "description": "<p>Random Last Digit (min:1, max:15)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialCutDigit",
            "description": "<p>Cut Digit (min:1, max:15)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialNoSuchNumberMaxRetry",
            "description": "<p>#NoSuchNumber Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialNoSuchNumberRetryFrequency",
            "description": "<p>NoSuchNumber Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialDropMaxRetry",
            "description": "<p>#Drop Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialDropRetryFrequency",
            "description": "<p>Drop Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAbandonedMaxRetry",
            "description": "<p>#Abandoned Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAbandonedRetryFrequency",
            "description": "<p>Abandoned Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialMachineMaxRetry",
            "description": "<p>#Machine Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialMachineRetryFrequency",
            "description": "<p>Machine Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAgentRejectMaxRetry",
            "description": "<p>#AgentReject Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAgentRejectRetryFrequency",
            "description": "<p>AgentReject Retry Frequency Minutes (min:1, max:99999)</p>"
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/campaigns?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/campaigns?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/campaigns?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/campaigns?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/campaigns?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/intervals?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/intervals?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/intervals?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/intervals?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/intervals?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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 -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addIntervals",
    "group": "Intervals",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/jscripty/answers/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/jscripty/answers/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/jscripty/answers/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/jscripty/answers/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/jscripty/answers/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/jscripty/questions/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/jscripty/questions/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/jscripty/questions/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/jscripty/questions/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/jscripty/questions/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/jscripty/sessions/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/jscripty/sessions/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/jscripty/sessions/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/jscripty/sessions/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/jscripty/sessions/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "sendUnpauseOnSubmit",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/jscripty/projects?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/jscripty/projects?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/jscripty/projects?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/jscripty/projects?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/jscripty/projects?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/license/index.js",
    "groupTitle": "License"
  },
  {
    "type": "put",
    "url": "/api/license/{id}",
    "title": "Update License Info",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/license/{id} -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "update",
    "group": "License",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/license/index.js",
    "groupTitle": "License"
  },
  {
    "type": "post",
    "url": "/api/mail/accounts/{id}/users",
    "title": "Add agents to a mail account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/mail/accounts/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddAgents",
    "group": "Mail_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailAccount/index.js",
    "groupTitle": "Mail_Accounts"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailAccount/index.js",
    "groupTitle": "Mail_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/mail/accounts/{id}",
    "title": "Deletes a mail account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/mail/accounts/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteMailAccounts",
    "group": "Mail_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/mailAccount/index.js",
    "groupTitle": "Mail_Accounts"
  },
  {
    "type": "get",
    "url": "/api/mail/accounts/{id}/users",
    "title": "Gets agents from mail account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/mail/accounts/{id}/users -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetAgents",
    "group": "Mail_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailAccount/index.js",
    "groupTitle": "Mail_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/mail/accounts/{id}/users",
    "title": "Removes agents from a mail account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/mail/accounts/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveAgents",
    "group": "Mail_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailAccount/index.js",
    "groupTitle": "Mail_Accounts"
  },
  {
    "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": "Mail_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailAccount/index.js",
    "groupTitle": "Mail_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/mail/accounts/{id}/dispositions",
    "title": "Removes dispositions from account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/mail/accounts/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveDispositions",
    "group": "Mail_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailAccount/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": ""
          },
          {
            "group": "Body",
            "type": "Virtual",
            "optional": true,
            "field": "name",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "optional": true,
            "field": "appdata",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interval",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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\"}' -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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "lastMsgBody",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "lastMsgText",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailAccount/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\" <[email-masked]>'}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "sendMail",
    "group": "Mail_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailApplication/index.js",
    "groupTitle": "Mail_Applications"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "lastMsgBody",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "lastMsgText",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/interactions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/interactions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/interactions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/interactions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/interactions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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\": \"[email-masked]\", \"...\": \"...\"}]' \\ \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": "Text",
            "optional": true,
            "field": "plainBody",
            "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": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "originTo",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "originCc",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailInteraction/index.js",
    "groupTitle": "Mail_Interactions"
  },
  {
    "type": "get",
    "url": "/api/mail/interactions/{id}/download",
    "title": "Gets interaction",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/mail/interactions/{id}/download -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "download",
    "group": "Mail_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailMessage/index.js",
    "groupTitle": "Mail_Messages"
  },
  {
    "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_Messages",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailMessage/index.js",
    "groupTitle": "Mail_Messages"
  },
  {
    "type": "get",
    "url": "/api/mail/messages/{id}/download",
    "title": "Gets message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/mail/messages/{id}/download -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "download",
    "group": "Mail_Messages",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailMessage/index.js",
    "groupTitle": "Mail_Messages"
  },
  {
    "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_Messages",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/reports/queue?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/reports/queue?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/reports/queue?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/reports/queue?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/reports/queue?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/out_servers?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/out_servers?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/out_servers?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/out_servers?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/out_servers?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/substatuses?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/substatuses?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/substatuses?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/substatuses?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/substatuses?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailSubstatus/index.js",
    "groupTitle": "Mail_Substatuses"
  },
  {
    "type": "post",
    "url": "/api/mail/reports/transfer",
    "title": "Creates a new Mail Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/mail/reports/transfer -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateMail_Transfer_Reports",
    "group": "Mail_Transfer_Reports",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "uniqueid",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"account\"",
              "\"agent\"",
              "\"queue\""
            ],
            "optional": false,
            "field": "type",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "transferredAt",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailTransferReport/index.js",
    "groupTitle": "Mail_Transfer_Reports"
  },
  {
    "type": "delete",
    "url": "/api/mail/reports/transfer/{id}",
    "title": "Deletes a Mail Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/mail/reports/transfer/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteMail_Transfer_Reports",
    "group": "Mail_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailTransferReport/index.js",
    "groupTitle": "Mail_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/mail/reports/transfer/describe",
    "title": "Gets table info about Mail Transfer Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/mail/reports/transfer/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeMail_Transfer_Reports",
    "group": "Mail_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailTransferReport/index.js",
    "groupTitle": "Mail_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/mail/reports/transfer",
    "title": "Gets a list of Mail Transfer Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/mail/reports/transfer -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetMail_Transfer_Reports",
    "group": "Mail_Transfer_Reports",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/reports/transfer?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/reports/transfer?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/reports/transfer?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/reports/transfer?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/reports/transfer?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/mailTransferReport/index.js",
    "groupTitle": "Mail_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/mail/reports/transfer/{id}",
    "title": "Gets a single Mail Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/mail/reports/transfer/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowMail_Transfer_Reports",
    "group": "Mail_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailTransferReport/index.js",
    "groupTitle": "Mail_Transfer_Reports"
  },
  {
    "type": "put",
    "url": "/api/mail/reports/transfer/{id}",
    "title": "Update an existing Mail Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/mail/reports/transfer/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateMail_Transfer_Reports",
    "group": "Mail_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailTransferReport/index.js",
    "groupTitle": "Mail_Transfer_Reports"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/members/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/members/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/members/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/members/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/members/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/migrations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/migrations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/migrations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/migrations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/migrations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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 -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "Create",
    "group": "Networks",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/networks?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/networks?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/networks?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/networks?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/networks?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/network/index.js",
    "groupTitle": "Networks"
  },
  {
    "type": "post",
    "url": "/api/notifications",
    "title": "Send notification to user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/notifications -d '{\"text\": \"Hello!\", \"TemplateId\": 1}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "Send",
    "group": "Notifications",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/notification/index.js",
    "groupTitle": "Notifications"
  },
  {
    "type": "post",
    "url": "/api/openchannel/accounts/{id}/users",
    "title": "Add agents to a openchannel account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/openchannel/accounts/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddAgents",
    "group": "Openchannel_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelAccount/index.js",
    "groupTitle": "Openchannel_Accounts"
  },
  {
    "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": "token",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "replyUri",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "key",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "notificationTemplate",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "notificationSound",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "notificationShake",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "waitForTheAssignedAgent",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "mapKey",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "queueTransfer",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "queueTransferTimeout",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "agentTransfer",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "agentTransferTimeout",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "mandatoryDispositionPauseId",
            "description": "<p>Status to put when mandatory disposition is enabled</p>"
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "mandatoryDisposition",
            "description": "<p>Enabled/disables mandatory dispo on a queue</p>"
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelAccount/index.js",
    "groupTitle": "Openchannel_Accounts"
  },
  {
    "type": "get",
    "url": "/api/openchannel/accounts/{id}/users",
    "title": "Gets agents from openchannel account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/openchannel/accounts/{id}/users -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetAgents",
    "group": "Openchannel_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelAccount/index.js",
    "groupTitle": "Openchannel_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/openchannel/accounts/{id}/users",
    "title": "Removes agents from a openchannel account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/openchannel/accounts/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveAgents",
    "group": "Openchannel_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelAccount/index.js",
    "groupTitle": "Openchannel_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/openchannel/accounts/{id}/dispositions",
    "title": "Removes dispositions from account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/openchannel/accounts/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveDispositions",
    "group": "Openchannel_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": ""
          },
          {
            "group": "Body",
            "type": "Virtual",
            "optional": true,
            "field": "name",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "optional": true,
            "field": "appdata",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interval",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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\": \"vip\"}' -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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <p>Follow this link to check the documentation: <pre><a target=\"_blank\" href=\"https://wiki.xcallymotion.com/display/XMV/New+Channels+Configuration+Steps#NewChannelsConfigurationSteps-BuildyourownChannelservice\">https://wiki.xcallymotion.com/display/XMV/New+Channels+Configuration+Steps#NewChannelsConfigurationSteps-BuildyourownChannelservice</a></pre></p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelAccount/index.js",
    "groupTitle": "Openchannel_Accounts"
  },
  {
    "type": "post",
    "url": "/api/openchannel/accounts/{id}/send",
    "title": "Send new openchannel message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/openchannel/accounts/{id}/send -d '{from: 'John Doe', body: 'This is a test'}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "sendOpenchannel",
    "group": "Openchannel_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "optional": true,
            "field": "appdata",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interval",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/applications?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/applications?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/applications?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/applications?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/applications?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelApplication/index.js",
    "groupTitle": "Openchannel_Applications"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "from",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/interactions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/interactions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/interactions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/interactions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/interactions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelInteraction/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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelInteraction/index.js",
    "groupTitle": "Openchannel_Interactions"
  },
  {
    "type": "get",
    "url": "/api/openchannel/interactions/{id}/download",
    "title": "Gets interaction",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/openchannel/interactions/{id}/download -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "download",
    "group": "Openchannel_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/reports/queue?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/reports/queue?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/reports/queue?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/reports/queue?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/reports/queue?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelQueue/index.js",
    "groupTitle": "Openchannel_Queues"
  },
  {
    "type": "post",
    "url": "/api/openchannel/reports/transfer",
    "title": "Creates a new Openchannel Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/openchannel/reports/transfer -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateOpenchannel_Transfer_Reports",
    "group": "Openchannel_Transfer_Reports",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "uniqueid",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"account\"",
              "\"agent\"",
              "\"queue\""
            ],
            "optional": false,
            "field": "type",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "transferredAt",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelTransferReport/index.js",
    "groupTitle": "Openchannel_Transfer_Reports"
  },
  {
    "type": "delete",
    "url": "/api/openchannel/reports/transfer/{id}",
    "title": "Deletes a Openchannel Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/openchannel/reports/transfer/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteOpenchannel_Transfer_Reports",
    "group": "Openchannel_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelTransferReport/index.js",
    "groupTitle": "Openchannel_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/openchannel/reports/transfer/describe",
    "title": "Gets table info about Openchannel Transfer Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/openchannel/reports/transfer/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeOpenchannel_Transfer_Reports",
    "group": "Openchannel_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelTransferReport/index.js",
    "groupTitle": "Openchannel_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/openchannel/reports/transfer",
    "title": "Gets a list of Openchannel Transfer Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/openchannel/reports/transfer -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetOpenchannel_Transfer_Reports",
    "group": "Openchannel_Transfer_Reports",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/reports/transfer?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/reports/transfer?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/reports/transfer?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/reports/transfer?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/reports/transfer?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelTransferReport/index.js",
    "groupTitle": "Openchannel_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/openchannel/reports/transfer/{id}",
    "title": "Gets a single Openchannel Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/openchannel/reports/transfer/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowOpenchannel_Transfer_Reports",
    "group": "Openchannel_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelTransferReport/index.js",
    "groupTitle": "Openchannel_Transfer_Reports"
  },
  {
    "type": "put",
    "url": "/api/openchannel/reports/transfer/{id}",
    "title": "Update an existing Openchannel Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/openchannel/reports/transfer/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateOpenchannel_Transfer_Reports",
    "group": "Openchannel_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelTransferReport/index.js",
    "groupTitle": "Openchannel_Transfer_Reports"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/pauses?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/pauses?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/pauses?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/pauses?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/pauses?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/pause/index.js",
    "groupTitle": "Pauses"
  },
  {
    "type": "get",
    "url": "/api/plugins",
    "title": "Gets a list of Plugins",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/plugins -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetPlugins",
    "group": "Plugins",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/plugins?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/plugins?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/plugins?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/plugins?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/plugins?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/plugin/index.js",
    "groupTitle": "Plugins"
  },
  {
    "type": "get",
    "url": "/api/plugins/{id}",
    "title": "Gets a single Plugin",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/plugins/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowPlugins",
    "group": "Plugins",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/plugin/index.js",
    "groupTitle": "Plugins"
  },
  {
    "type": "delete",
    "url": "/api/plugins/{id}",
    "title": "Delete a plugin",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/plugins/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "destroyPlugin",
    "group": "Plugins",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/plugin/index.js",
    "groupTitle": "Plugins"
  },
  {
    "type": "get",
    "url": "/api/plugins/{id}/download",
    "title": "Download plugin source code",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/plugins/{id}/download -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "download",
    "group": "Plugins",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/plugin/index.js",
    "groupTitle": "Plugins"
  },
  {
    "type": "put",
    "url": "/api/plugins/{id}",
    "title": "Update an existing plugin",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/plugins/{id} -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updatePlugin",
    "group": "Plugins",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/plugin/index.js",
    "groupTitle": "Plugins"
  },
  {
    "type": "post",
    "url": "/api/plugins",
    "title": "Upload new plugin",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/plugins -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "uploadPlugin",
    "group": "Plugins",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/plugin/index.js",
    "groupTitle": "Plugins"
  },
  {
    "type": "get",
    "url": "/api/plugins/webhook?hostname={host}&port={port}&encoding={encoding}&json={json}&path={path}",
    "title": "Redirect a plugin request to the specified path",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/plugins/webhook?port={port}&path={path} -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "webhookPlugin",
    "group": "Plugins",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/plugin/index.js",
    "groupTitle": "Plugins"
  },
  {
    "type": "post",
    "url": "/api/plugins/webhook?hostname={host}&port={port}&encoding={encoding}&json={json}&path={path}",
    "title": "Redirect a plugin request to the specified path",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/plugins/webhook?port={port}&path={path} -H 'Content-Type: application/json' -X POST",
        "type": "json"
      }
    ],
    "name": "webhookPlugin",
    "group": "Plugins",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/plugin/index.js",
    "groupTitle": "Plugins"
  },
  {
    "type": "delete",
    "url": "/api/pm2/{id}",
    "title": "Deletes an existing process",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/pm2/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeletePm2Process",
    "group": "Pm2",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/pm2/index.js",
    "groupTitle": "Pm2"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion returns the pm2 processes list.</p>",
    "version": "0.0.0",
    "filename": "server/api/pm2/index.js",
    "groupTitle": "Pm2"
  },
  {
    "type": "post",
    "url": "/api/pm2",
    "title": "Start a single pm2 process",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/pm2 -d '{\"name\": \"process_name\", \"script\": \"/index.js\"}'\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "StartPm2Process",
    "group": "Pm2",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "name",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "script",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "UpdatePm2Process",
    "group": "Pm2",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime campaigns parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime fax account parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return the current agent capacity.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime agents parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime chat queues parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime fax queues parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime mail account parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime mail queues parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime openchannel queues parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime outbound channels.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime sms queues parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of telephones parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime trunks parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime voice channel mixmonitor.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime voice channel stopmixmonitor.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime voice channels.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a specific realtime voice queue channel.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will hangup a specific realtime voice queue channel.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will redirect a specific realtime voice queue channel to a specific extension.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a specific preview contact.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime outbound parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime voice queues parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime voice queues channels.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/rpc/index.js",
    "groupTitle": "RPC_Realtime"
  },
  {
    "type": "get",
    "url": "/api/rpc/chat/queues/{id}",
    "title": "Gets a single RTChatQueue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/rpc/chat/queues/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowRTChatQueues",
    "group": "RPC_Realtime",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/rpc/index.js",
    "groupTitle": "RPC_Realtime"
  },
  {
    "type": "get",
    "url": "/api/rpc/fax/queues/{id}",
    "title": "Gets a single RTFaxQueue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/rpc/fax/queues/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowRTFaxQueues",
    "group": "RPC_Realtime",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/rpc/index.js",
    "groupTitle": "RPC_Realtime"
  },
  {
    "type": "get",
    "url": "/api/rpc/mail/queues/{id}",
    "title": "Gets a single RTMailQueue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/rpc/mail/queues/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowRTMailQueues",
    "group": "RPC_Realtime",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/rpc/index.js",
    "groupTitle": "RPC_Realtime"
  },
  {
    "type": "get",
    "url": "/api/rpc/openchannel/queues/{id}",
    "title": "Gets a single RTOpenchannelQueue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/rpc/openchannel/queues/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowRTOpenchannelQueues",
    "group": "RPC_Realtime",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/rpc/index.js",
    "groupTitle": "RPC_Realtime"
  },
  {
    "type": "get",
    "url": "/api/rpc/sms/queues/{id}",
    "title": "Gets a single RTSmsQueue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/rpc/sms/queues/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowRTSmsQueues",
    "group": "RPC_Realtime",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/rpc/index.js",
    "groupTitle": "RPC_Realtime"
  },
  {
    "type": "get",
    "url": "/api/rpc/voice/queues/{id}",
    "title": "Gets a single RTVoiceQueue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/rpc/voice/queues/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowRTVoiceQueues",
    "group": "RPC_Realtime",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/rpc/index.js",
    "groupTitle": "RPC_Realtime"
  },
  {
    "type": "post",
    "url": "/api/rpc/agents/:id/notify",
    "title": "Notify message to a specific agent",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/rpc/agents/:id/notify -d '{\"messageId\": \"5080\", \"channel\": \"mail\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "agentNotify",
    "group": "RPC_Realtime",
    "description": "<p>Notify message to a specific agent.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/rpc/index.js",
    "groupTitle": "RPC_Realtime"
  },
  {
    "type": "post",
    "url": "/api/rpc/chat/queues/:id/notify",
    "title": "Notify message to a specific queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/rpc/chat/queues/:id/notify -d '{\"messageId\": \"5080\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "chatQueueNotify",
    "group": "RPC_Realtime",
    "description": "<p>Notify message to a specific queue.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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/chat/queues/waitinginteractions -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "chatQueuesWaitingInteractions",
    "group": "RPC_Realtime",
    "description": "<p>Motion will return a list of realtime waiting chat queues interctions.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/rpc/index.js",
    "groupTitle": "RPC_Realtime"
  },
  {
    "type": "post",
    "url": "/api/rpc/fax/queues/:id/notify",
    "title": "Notify message to a specific queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/rpc/fax/queues/:id/notify -d '{\"messageId\": \"5080\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "faxQueueNotify",
    "group": "RPC_Realtime",
    "description": "<p>Notify message to a specific queue.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime waiting fax queues interctions.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/rpc/index.js",
    "groupTitle": "RPC_Realtime"
  },
  {
    "type": "post",
    "url": "/api/rpc/mail/queues/:id/notify",
    "title": "Notify message to a specific queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/rpc/mail/queues/:id/notify -d '{\"messageId\": \"5080\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "mailQueueNotify",
    "group": "RPC_Realtime",
    "description": "<p>Notify message to a specific queue.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime waiting mail queues interctions.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/rpc/index.js",
    "groupTitle": "RPC_Realtime"
  },
  {
    "type": "post",
    "url": "/api/rpc/openchannel/queues/:id/notify",
    "title": "Notify message to a specific queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/rpc/openchannel/queues/:id/notify -d '{\"messageId\": \"5080\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "openchannelQueueNotify",
    "group": "RPC_Realtime",
    "description": "<p>Notify message to a specific queue.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime waiting openchannel queues interctions.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/rpc/index.js",
    "groupTitle": "RPC_Realtime"
  },
  {
    "type": "post",
    "url": "/api/rpc/sms/queues/:id/notify",
    "title": "Notify message to a specific queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/rpc/sms/queues/:id/notify -d '{\"messageId\": \"5080\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "smsQueueNotify",
    "group": "RPC_Realtime",
    "description": "<p>Notify message to a specific queue.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime waiting sms queues interctions.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/salesforce/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/salesforce/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/salesforce/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/salesforce/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/salesforce/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": [
              "\"Task\"",
              "\"Case\""
            ],
            "optional": true,
            "field": "ticketType",
            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/salesforce/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/salesforce/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/salesforce/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/salesforce/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/salesforce/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/salesforce/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/salesforce/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/salesforce/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/salesforce/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/salesforce/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "cc",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "bcc",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "sendIfEmpty",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/schedules?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/schedules?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/schedules?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/schedules?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/schedules?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/schedule/index.js",
    "groupTitle": "Schedules"
  },
  {
    "type": "get",
    "url": "/api/schedules/{id}/run",
    "title": "Run Scheduler",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/schedules/{id}/run -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "run",
    "group": "Schedules",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/schedule/index.js",
    "groupTitle": "Schedules"
  },
  {
    "type": "post",
    "url": "/api/screen/recordings",
    "title": "Creates a new Recording",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/screen/recordings -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateRecordings",
    "group": "Screen_Recordings",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "Virtual",
            "optional": true,
            "field": "format",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interactionid",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "channel",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "value",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "rating",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "duration",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "startedAt",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "closedAt",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "createdAt",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "updatedAt",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/screenRecording/index.js",
    "groupTitle": "Screen_Recordings"
  },
  {
    "type": "get",
    "url": "/api/screen/recordings/describe",
    "title": "Gets table info about Recordings",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/screen/recordings/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeRecordings",
    "group": "Screen_Recordings",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/screenRecording/index.js",
    "groupTitle": "Screen_Recordings"
  },
  {
    "type": "get",
    "url": "/api/screen/recordings",
    "title": "Gets a list of Recordings",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/screen/recordings -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetRecordings",
    "group": "Screen_Recordings",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/screen/recordings?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/screen/recordings?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/screen/recordings?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/screen/recordings?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/screen/recordings?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/screenRecording/index.js",
    "groupTitle": "Screen_Recordings"
  },
  {
    "type": "get",
    "url": "/api/screen/recordings/{id}",
    "title": "Gets a single Recording",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/screen/recordings/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowRecordings",
    "group": "Screen_Recordings",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/screenRecording/index.js",
    "groupTitle": "Screen_Recordings"
  },
  {
    "type": "delete",
    "url": "/api/screen/recordings/{id}",
    "title": "Delete screen recording",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/screen/recordings/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "destroy",
    "group": "Screen_Recordings",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/screenRecording/index.js",
    "groupTitle": "Screen_Recordings"
  },
  {
    "type": "get",
    "url": "/api/screen/recordings/{id}/download",
    "title": "Download Recording",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/screen/recordings/{id}/download -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "download",
    "group": "Screen_Recordings",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/screenRecording/index.js",
    "groupTitle": "Screen_Recordings"
  },
  {
    "type": "put",
    "url": "/api/screen/recordings/{id}",
    "title": "Update an existing Recording",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/screen/recordings/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateRecordings",
    "group": "Screen_Recordings",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/screenRecording/index.js",
    "groupTitle": "Screen_Recordings"
  },
  {
    "type": "post",
    "url": "/api/integrations/servicenow/accounts",
    "title": "Creates a new Servicenow Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateServicenow_Accounts",
    "group": "Servicenow_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": "email",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "remoteUri",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "serverUrl",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowAccount/index.js",
    "groupTitle": "Servicenow_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/integrations/servicenow/accounts/{id}",
    "title": "Deletes a Servicenow Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/accounts/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteServicenow_Accounts",
    "group": "Servicenow_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowAccount/index.js",
    "groupTitle": "Servicenow_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/servicenow/accounts",
    "title": "Gets a list of Servicenow Accounts",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/accounts -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetServicenow_Accounts",
    "group": "Servicenow_Accounts",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/servicenow/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/servicenow/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/servicenow/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/servicenow/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/servicenow/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowAccount/index.js",
    "groupTitle": "Servicenow_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/servicenow/accounts/{id}",
    "title": "Gets a single Servicenow Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/accounts/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowServicenow_Accounts",
    "group": "Servicenow_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowAccount/index.js",
    "groupTitle": "Servicenow_Accounts"
  },
  {
    "type": "post",
    "url": "/api/integrations/servicenow/accounts/{id}/configurations",
    "title": "Creates new configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addConfiguration",
    "group": "Servicenow_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowAccount/index.js",
    "groupTitle": "Servicenow_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/servicenow/accounts/{id}/configurations",
    "title": "Gets account configurations",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/accounts/{id}/configurations -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getConfigurations",
    "group": "Servicenow_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowAccount/index.js",
    "groupTitle": "Servicenow_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/servicenow/accounts/{id}/fields",
    "title": "Gets account fields",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/accounts/{id}/fields -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getFields",
    "group": "Servicenow_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowAccount/index.js",
    "groupTitle": "Servicenow_Accounts"
  },
  {
    "type": "put",
    "url": "/api/integrations/servicenow/accounts/{id}",
    "title": "Update an existing Servicenow Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateServicenow_Accounts",
    "group": "Servicenow_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowAccount/index.js",
    "groupTitle": "Servicenow_Accounts"
  },
  {
    "type": "post",
    "url": "/api/integrations/servicenow/configurations",
    "title": "Creates a new Servicenow Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateServicenow_Configurations",
    "group": "Servicenow_Configurations",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "name",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowConfiguration/index.js",
    "groupTitle": "Servicenow_Configurations"
  },
  {
    "type": "delete",
    "url": "/api/integrations/servicenow/configurations/{id}",
    "title": "Deletes a Servicenow Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/configurations/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteServicenow_Configurations",
    "group": "Servicenow_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowConfiguration/index.js",
    "groupTitle": "Servicenow_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/servicenow/configurations",
    "title": "Gets a list of Servicenow Configurations",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/configurations -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetServicenow_Configurations",
    "group": "Servicenow_Configurations",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/servicenow/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/servicenow/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/servicenow/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/servicenow/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/servicenow/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowConfiguration/index.js",
    "groupTitle": "Servicenow_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/servicenow/configurations/{id}",
    "title": "Gets a single Servicenow Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/configurations/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowServicenow_Configurations",
    "group": "Servicenow_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowConfiguration/index.js",
    "groupTitle": "Servicenow_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/servicenow/configurations/{id}/descriptions",
    "title": "Gets configurations descriptions",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/configurations/{id}/descriptions -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getDescriptions",
    "group": "Servicenow_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowConfiguration/index.js",
    "groupTitle": "Servicenow_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/servicenow/configurations/{id}/fields",
    "title": "Gets configurations fields",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/configurations/{id}/fields -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getFields",
    "group": "Servicenow_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowConfiguration/index.js",
    "groupTitle": "Servicenow_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/servicenow/configurations/{id}/subjects",
    "title": "Gets configurations subjects",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/configurations/{id}/subjects -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getSubjects",
    "group": "Servicenow_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowConfiguration/index.js",
    "groupTitle": "Servicenow_Configurations"
  },
  {
    "type": "put",
    "url": "/api/integrations/servicenow/configurations/{id}",
    "title": "Update an existing Servicenow Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateServicenow_Configurations",
    "group": "Servicenow_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowConfiguration/index.js",
    "groupTitle": "Servicenow_Configurations"
  },
  {
    "type": "post",
    "url": "/api/integrations/servicenow/fields",
    "title": "Creates a new Servicenow Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateServicenow_Fields",
    "group": "Servicenow_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowField/index.js",
    "groupTitle": "Servicenow_Fields"
  },
  {
    "type": "delete",
    "url": "/api/integrations/servicenow/fields/{id}",
    "title": "Deletes a Servicenow Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/fields/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteServicenow_Fields",
    "group": "Servicenow_Fields",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowField/index.js",
    "groupTitle": "Servicenow_Fields"
  },
  {
    "type": "get",
    "url": "/api/integrations/servicenow/fields",
    "title": "Gets a list of Servicenow Fields",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/fields -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetServicenow_Fields",
    "group": "Servicenow_Fields",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/servicenow/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/servicenow/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/servicenow/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/servicenow/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/servicenow/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowField/index.js",
    "groupTitle": "Servicenow_Fields"
  },
  {
    "type": "get",
    "url": "/api/integrations/servicenow/fields/{id}",
    "title": "Gets a single Servicenow Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/fields/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowServicenow_Fields",
    "group": "Servicenow_Fields",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowField/index.js",
    "groupTitle": "Servicenow_Fields"
  },
  {
    "type": "put",
    "url": "/api/integrations/servicenow/fields/{id}",
    "title": "Update an existing Servicenow Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateServicenow_Fields",
    "group": "Servicenow_Fields",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowField/index.js",
    "groupTitle": "Servicenow_Fields"
  },
  {
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/settings?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/settings?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/settings?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/settings?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/settings?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/setting/index.js",
    "groupTitle": "Settings"
  },
  {
    "type": "post",
    "url": "/api/settings/{id}/favicon",
    "title": "Add Favicon",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/settings/{id}/favicon -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addFavicon",
    "group": "Settings",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/setting/index.js",
    "groupTitle": "Settings"
  },
  {
    "type": "post",
    "url": "/api/settings/{id}/preferred",
    "title": "Add Preferred",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/settings/{id}/preferred -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addPreferred",
    "group": "Settings",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/setting/index.js",
    "groupTitle": "Settings"
  },
  {
    "type": "get",
    "url": "/api/settings/{id}/favicon",
    "title": "Get Favicon",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/settings/{id}/favicon -v -X GET",
        "type": "json"
      }
    ],
    "name": "getFavicon",
    "group": "Settings",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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 -X GET",
        "type": "json"
      }
    ],
    "name": "getLogo",
    "group": "Settings",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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 -X GET",
        "type": "json"
      }
    ],
    "name": "getLogoLogin",
    "group": "Settings",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/setting/index.js",
    "groupTitle": "Settings"
  },
  {
    "type": "get",
    "url": "/api/settings/{id}/preferred",
    "title": "Get Preferred",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/settings/{id}/preferred -v -X GET",
        "type": "json"
      }
    ],
    "name": "getPreferred",
    "group": "Settings",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/setting/index.js",
    "groupTitle": "Settings"
  },
  {
    "type": "put",
    "url": "/api/settings/{id}",
    "title": "Update an existing Setting",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/settings/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateSettings",
    "group": "Settings",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/setting/index.js",
    "groupTitle": "Settings"
  },
  {
    "type": "post",
    "url": "/api/sms/accounts/{id}/users",
    "title": "Add agents to a sms account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/sms/accounts/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddAgents",
    "group": "Sms_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/smsAccount/index.js",
    "groupTitle": "Sms_Accounts"
  },
  {
    "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\"",
              "\"clickatell\"",
              "\"csc\"",
              "\"infobip\"",
              "\"intelepeer\""
            ],
            "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": [
              "\"SI\"",
              "\"TI\"",
              "\"GP\""
            ],
            "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": "apiKey",
            "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": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "notificationTemplate",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "notificationSound",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "notificationShake",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "waitForTheAssignedAgent",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "queueTransfer",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "queueTransferTimeout",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "agentTransfer",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "agentTransferTimeout",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "baseUrl",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "mandatoryDispositionPauseId",
            "description": "<p>Status to put when mandatory disposition is enabled</p>"
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "mandatoryDisposition",
            "description": "<p>Enabled/disables mandatory dispo on a queue</p>"
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/smsAccount/index.js",
    "groupTitle": "Sms_Accounts"
  },
  {
    "type": "get",
    "url": "/api/sms/accounts/{id}/users",
    "title": "Gets agents from sms account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/sms/accounts/{id}/users -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetAgents",
    "group": "Sms_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/smsAccount/index.js",
    "groupTitle": "Sms_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/sms/accounts/{id}/users",
    "title": "Removes agents from a sms account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/sms/accounts/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveAgents",
    "group": "Sms_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/smsAccount/index.js",
    "groupTitle": "Sms_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/sms/accounts/{id}/dispositions",
    "title": "Removes dispositions from account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/sms/accounts/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveDispositions",
    "group": "Sms_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": ""
          },
          {
            "group": "Body",
            "type": "Virtual",
            "optional": true,
            "field": "name",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "optional": true,
            "field": "appdata",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interval",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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\": \"vip\"}' -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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <p>This API is used to create a new sms message to be sent to the system.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/smsMessage/index.js",
    "groupTitle": "Sms_Accounts"
  },
  {
    "type": "get",
    "url": "/api/sms/accounts/{id}/status",
    "title": "Receive message status as get request",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/sms/accounts/{id}/status -H 'Content-Type: application/json' -v -X GET",
        "type": "json"
      }
    ],
    "name": "statusMessage",
    "group": "Sms_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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 -H 'Content-Type: application/json' -v -X POST",
        "type": "json"
      }
    ],
    "name": "statusMessage",
    "group": "Sms_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "optional": true,
            "field": "appdata",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interval",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/applications?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/applications?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/applications?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/applications?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/applications?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/smsApplication/index.js",
    "groupTitle": "Sms_Applications"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/interactions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/interactions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/interactions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/interactions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/interactions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/smsInteraction/index.js",
    "groupTitle": "Sms_Interactions"
  },
  {
    "type": "get",
    "url": "/api/sms/interactions/{id}/download",
    "title": "Gets interaction",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/sms/interactions/{id}/download -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "download",
    "group": "Sms_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/reports/queue?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/reports/queue?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/reports/queue?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/reports/queue?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/reports/queue?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/smsQueue/index.js",
    "groupTitle": "Sms_Queues"
  },
  {
    "type": "post",
    "url": "/api/sms/reports/transfer",
    "title": "Creates a new Sms Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/sms/reports/transfer -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateSms_Transfer_Reports",
    "group": "Sms_Transfer_Reports",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "uniqueid",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"account\"",
              "\"agent\"",
              "\"queue\""
            ],
            "optional": false,
            "field": "type",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "transferredAt",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/smsTransferReport/index.js",
    "groupTitle": "Sms_Transfer_Reports"
  },
  {
    "type": "delete",
    "url": "/api/sms/reports/transfer/{id}",
    "title": "Deletes a Sms Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/sms/reports/transfer/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteSms_Transfer_Reports",
    "group": "Sms_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/smsTransferReport/index.js",
    "groupTitle": "Sms_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/sms/reports/transfer/describe",
    "title": "Gets table info about Sms Transfer Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/sms/reports/transfer/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeSms_Transfer_Reports",
    "group": "Sms_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/smsTransferReport/index.js",
    "groupTitle": "Sms_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/sms/reports/transfer",
    "title": "Gets a list of Sms Transfer Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/sms/reports/transfer -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetSms_Transfer_Reports",
    "group": "Sms_Transfer_Reports",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/reports/transfer?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/reports/transfer?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/reports/transfer?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/reports/transfer?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/reports/transfer?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/smsTransferReport/index.js",
    "groupTitle": "Sms_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/sms/reports/transfer/{id}",
    "title": "Gets a single Sms Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/sms/reports/transfer/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowSms_Transfer_Reports",
    "group": "Sms_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/smsTransferReport/index.js",
    "groupTitle": "Sms_Transfer_Reports"
  },
  {
    "type": "put",
    "url": "/api/sms/reports/transfer/{id}",
    "title": "Update an existing Sms Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/sms/reports/transfer/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateSms_Transfer_Reports",
    "group": "Sms_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/smsTransferReport/index.js",
    "groupTitle": "Sms_Transfer_Reports"
  },
  {
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sounds?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sounds?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sounds?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sounds?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sounds?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/square/details/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/square/details/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/square/details/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/square/details/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/square/details/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/squareReportDetail/index.js",
    "groupTitle": "Square_Details_Reports"
  },
  {
    "type": "post",
    "url": "/api/square/messages",
    "title": "Creates a new Message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/square/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateMessages",
    "group": "Square_Messages",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "uniqueid",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": false,
            "field": "body",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"in\"",
              "\"out\""
            ],
            "optional": false,
            "field": "direction",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/squareMessage/index.js",
    "groupTitle": "Square_Messages"
  },
  {
    "type": "delete",
    "url": "/api/square/messages/{id}",
    "title": "Deletes a Message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/square/messages/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteMessages",
    "group": "Square_Messages",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/squareMessage/index.js",
    "groupTitle": "Square_Messages"
  },
  {
    "type": "get",
    "url": "/api/square/messages",
    "title": "Gets a list of Messages",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/square/messages -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetMessages",
    "group": "Square_Messages",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/square/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/square/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/square/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/square/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/square/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/squareMessage/index.js",
    "groupTitle": "Square_Messages"
  },
  {
    "type": "get",
    "url": "/api/square/messages/{id}",
    "title": "Gets a single Message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/square/messages/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowMessages",
    "group": "Square_Messages",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/squareMessage/index.js",
    "groupTitle": "Square_Messages"
  },
  {
    "type": "put",
    "url": "/api/square/messages/{id}",
    "title": "Update an existing Message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/square/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateMessages",
    "group": "Square_Messages",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/squareMessage/index.js",
    "groupTitle": "Square_Messages"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/square/odbc?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/square/odbc?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/square/odbc?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/square/odbc?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/square/odbc?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/square/projects?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/square/projects?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/square/projects?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/square/projects?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/square/projects?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/squareProject/index.js",
    "groupTitle": "Square_Projects"
  },
  {
    "type": "post",
    "url": "/api/square/projects/{id}/users",
    "title": "Adds user permissions to a Project",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/square/projects/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addUsers",
    "group": "Square_Projects",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/squareProject/index.js",
    "groupTitle": "Square_Projects"
  },
  {
    "type": "get",
    "url": "/api/square/projects/{id}/users",
    "title": "Gets users permissions from Project",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/square/projects/{id}/users -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getUsers",
    "group": "Square_Projects",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/squareProject/index.js",
    "groupTitle": "Square_Projects"
  },
  {
    "type": "delete",
    "url": "/api/square/projects/{id}/users",
    "title": "Removes user permissions from a Project",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/square/projects/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "removeUsers",
    "group": "Square_Projects",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": ""
          },
          {
            "group": "Body",
            "type": "Virtual",
            "optional": true,
            "field": "format",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/square/recordings?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/square/recordings?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/square/recordings?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/square/recordings?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/square/recordings?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/squareRecording/index.js",
    "groupTitle": "Square_Recordings"
  },
  {
    "type": "delete",
    "url": "/api/square/recordings/{id}/delete",
    "title": "Delete recording",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/square/recordings/{id}/delete -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "destroy",
    "group": "Square_Recordings",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "bot",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/square/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/square/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/square/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/square/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/square/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/sugarcrm/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/sugarcrm/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/sugarcrm/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/sugarcrm/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/sugarcrm/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/sugarcrm/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/sugarcrm/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/sugarcrm/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/sugarcrm/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/sugarcrm/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/sugarcrm/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/sugarcrm/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/sugarcrm/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/sugarcrm/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/sugarcrm/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intSugarcrmField/index.js",
    "groupTitle": "Sugarcrm_Fields"
  },
  {
    "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": "<p>Motion returns the system information.</p>",
    "version": "0.0.0",
    "filename": "server/api/system/index.js",
    "groupTitle": "System_Information"
  },
  {
    "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": "<p>Motion returns the system information.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/tags?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/tags?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/tags?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/tags?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/tags?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/teams?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/teams?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/teams?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/teams?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/teams?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/team/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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelQueue/index.js",
    "groupTitle": "Teams"
  },
  {
    "type": "delete",
    "url": "/api/whatsapp/queues/{id}/teams",
    "title": "Remove teams from a queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/queues/{id}/teams -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveTeams",
    "group": "Teams",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueue/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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/smsQueue/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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voiceQueue/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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatQueue/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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxQueue/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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/templates?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/templates?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/templates?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/templates?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/templates?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/triggers?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/triggers?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/triggers?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/triggers?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/triggers?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Allowed values: contactManager, integration, motionbar, jscripty, urlForward, browser, bot, script</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "data1",
            "description": "<p>contactManager[ListId], integration[intName(zendesk)], motionbar[Popup(0),URL(1),WinApp(2)], urlForward[GET,POST], browser[TemplateId(0),URL(1)]</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "data2",
            "description": "<p>integration[AccountId], motionbar[TemplateId,URL,WinAppPath], urlForward[URL]</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "data3",
            "description": "<p>motionbar[NULL,NULL,WinAppArguments]</p>"
          },
          {
            "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": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "data7",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/trigger/index.js",
    "groupTitle": "Triggers"
  },
  {
    "type": "post",
    "url": "/api/trunks/clone",
    "title": "Clone an existing Trunk",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/trunks/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CloneTrunks",
    "group": "Trunks",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/trunk/index.js",
    "groupTitle": "Trunks"
  },
  {
    "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": "<p>String is deprecated. Please use an Array as [&quot;udp&quot;, &quot;tcp&quot;]</p>"
          },
          {
            "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": "<p>String is deprecated. Please use an Array as [&quot;force_rport&quot;, &quot;comedia&quot;]</p>"
          },
          {
            "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": "<p>String is deprecated. Please use an Array as [&quot;ulaw&quot;, &quot;alaw&quot;, &quot;alaw&quot;]</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"yes\"",
              "\"no\""
            ],
            "optional": true,
            "field": "autoframing",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "insecure",
            "description": "<p>String is deprecated. Please use an Array as [&quot;port&quot;, &quot;invite&quot;]</p>"
          },
          {
            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/trunks?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/trunks?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/trunks?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/trunks?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/trunks?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/trunk/index.js",
    "groupTitle": "Trunks"
  },
  {
    "type": "post",
    "url": "/api/userProfile/resources",
    "title": "Creates a new User Profile Resource",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfile/resources -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateUser_Profile_Resources",
    "group": "User_Profile_Resources",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "name",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": false,
            "field": "resourceId",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "type",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfileResource/index.js",
    "groupTitle": "User_Profile_Resources"
  },
  {
    "type": "delete",
    "url": "/api/userProfile/resources/{id}",
    "title": "Deletes a User Profile Resource",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfile/resources/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteUser_Profile_Resources",
    "group": "User_Profile_Resources",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfileResource/index.js",
    "groupTitle": "User_Profile_Resources"
  },
  {
    "type": "get",
    "url": "/api/userProfile/resources/describe",
    "title": "Gets table info about User Profile Resources",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfile/resources/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeUser_Profile_Resources",
    "group": "User_Profile_Resources",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfileResource/index.js",
    "groupTitle": "User_Profile_Resources"
  },
  {
    "type": "get",
    "url": "/api/userProfile/resources",
    "title": "Gets a list of User Profile Resources",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfile/resources -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetUser_Profile_Resources",
    "group": "User_Profile_Resources",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/userProfile/resources?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/userProfile/resources?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/userProfile/resources?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/userProfile/resources?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/userProfile/resources?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/userProfileResource/index.js",
    "groupTitle": "User_Profile_Resources"
  },
  {
    "type": "get",
    "url": "/api/userProfile/resources/{id}",
    "title": "Gets a single User Profile Resource",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfile/resources/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowUser_Profile_Resources",
    "group": "User_Profile_Resources",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfileResource/index.js",
    "groupTitle": "User_Profile_Resources"
  },
  {
    "type": "put",
    "url": "/api/userProfile/resources/{id}",
    "title": "Update an existing User Profile Resource",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfile/resources/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateUser_Profile_Resources",
    "group": "User_Profile_Resources",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfileResource/index.js",
    "groupTitle": "User_Profile_Resources"
  },
  {
    "type": "post",
    "url": "/api/userProfile/sections",
    "title": "Creates a new User Profile Section",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfile/sections -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateUser_Profile_Sections",
    "group": "User_Profile_Sections",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "name",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "category",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": false,
            "field": "sectionId",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "enabled",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "autoAssociation",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "crudPermissions",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfileSection/index.js",
    "groupTitle": "User_Profile_Sections"
  },
  {
    "type": "delete",
    "url": "/api/userProfile/sections/{id}",
    "title": "Deletes a User Profile Section",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfile/sections/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteUser_Profile_Sections",
    "group": "User_Profile_Sections",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfileSection/index.js",
    "groupTitle": "User_Profile_Sections"
  },
  {
    "type": "get",
    "url": "/api/userProfile/sections/describe",
    "title": "Gets table info about User Profile Sections",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfile/sections/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeUser_Profile_Sections",
    "group": "User_Profile_Sections",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfileSection/index.js",
    "groupTitle": "User_Profile_Sections"
  },
  {
    "type": "get",
    "url": "/api/userProfile/sections",
    "title": "Gets a list of User Profile Sections",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfile/sections -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetUser_Profile_Sections",
    "group": "User_Profile_Sections",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/userProfile/sections?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/userProfile/sections?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/userProfile/sections?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/userProfile/sections?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/userProfile/sections?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/userProfileSection/index.js",
    "groupTitle": "User_Profile_Sections"
  },
  {
    "type": "get",
    "url": "/api/userProfile/sections/{id}",
    "title": "Gets a single User Profile Section",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfile/sections/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowUser_Profile_Sections",
    "group": "User_Profile_Sections",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfileSection/index.js",
    "groupTitle": "User_Profile_Sections"
  },
  {
    "type": "put",
    "url": "/api/userProfile/sections/{id}",
    "title": "Update an existing User Profile Section",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfile/sections/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateUser_Profile_Sections",
    "group": "User_Profile_Sections",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfileSection/index.js",
    "groupTitle": "User_Profile_Sections"
  },
  {
    "type": "post",
    "url": "/api/userProfiles/{id}/resources",
    "title": "Add resources' permissions to User Profile",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfiles/{id}/resources -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddResources",
    "group": "User_Profiles",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfile/index.js",
    "groupTitle": "User_Profiles"
  },
  {
    "type": "post",
    "url": "/api/userProfiles/{id}/sections",
    "title": "Add sections' permissions to User Profile",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfiles/{id}/sections -d '[{\"sectionId\": \"name\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddSections",
    "group": "User_Profiles",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfile/index.js",
    "groupTitle": "User_Profiles"
  },
  {
    "type": "post",
    "url": "/api/userProfiles/clone",
    "title": "Clone an existing User Profile",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfiles/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CloneUser_Profiles",
    "group": "User_Profiles",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfile/index.js",
    "groupTitle": "User_Profiles"
  },
  {
    "type": "post",
    "url": "/api/userProfiles",
    "title": "Creates a new User Profile",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfiles -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateUser_Profiles",
    "group": "User_Profiles",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "name",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "crudPermissions",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfile/index.js",
    "groupTitle": "User_Profiles"
  },
  {
    "type": "delete",
    "url": "/api/userProfiles/{id}",
    "title": "Deletes a User Profile",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfiles/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteUser_Profiles",
    "group": "User_Profiles",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfile/index.js",
    "groupTitle": "User_Profiles"
  },
  {
    "type": "get",
    "url": "/api/userProfiles/describe",
    "title": "Gets table info about User Profiles",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfiles/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeUser_Profiles",
    "group": "User_Profiles",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfile/index.js",
    "groupTitle": "User_Profiles"
  },
  {
    "type": "get",
    "url": "/api/userProfiles/{id}/resources?section={section}",
    "title": "Get Resources assigned to a Section",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfiles/{id}/resources?section={section} -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetResources",
    "group": "User_Profiles",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfile/index.js",
    "groupTitle": "User_Profiles"
  },
  {
    "type": "get",
    "url": "/api/userProfiles/{id}/sections",
    "title": "Get sections associated to a User Profile",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfiles/{id}/sections -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetSections",
    "group": "User_Profiles",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfile/index.js",
    "groupTitle": "User_Profiles"
  },
  {
    "type": "get",
    "url": "/api/userProfiles",
    "title": "Gets a list of User Profiles",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfiles -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetUser_Profiles",
    "group": "User_Profiles",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/userProfiles?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/userProfiles?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/userProfiles?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/userProfiles?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/userProfiles?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/userProfile/index.js",
    "groupTitle": "User_Profiles"
  },
  {
    "type": "delete",
    "url": "/api/userProfiles/{id}/resources",
    "title": "Removes resources' permissions from User Profile",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfiles/{id}/resources?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveResources",
    "group": "User_Profiles",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfile/index.js",
    "groupTitle": "User_Profiles"
  },
  {
    "type": "delete",
    "url": "/api/userProfiles/{id}/sections",
    "title": "Removes sections' permissions from User Profile",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfiles/{id}/sections?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveSections",
    "group": "User_Profiles",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfile/index.js",
    "groupTitle": "User_Profiles"
  },
  {
    "type": "get",
    "url": "/api/userProfiles/{id}",
    "title": "Gets a single User Profile",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfiles/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowUser_Profiles",
    "group": "User_Profiles",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfile/index.js",
    "groupTitle": "User_Profiles"
  },
  {
    "type": "put",
    "url": "/api/userProfiles/{id}",
    "title": "Update an existing User Profile",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfiles/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateUser_Profiles",
    "group": "User_Profiles",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfile/index.js",
    "groupTitle": "User_Profiles"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/chat_interactions",
    "title": "Add chat interaction tabs to an agent",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/chat_interactions -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddChatInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/chat_websites",
    "title": "Add a Chat Website to a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/chat_websites -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddChatWebsites",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/fax_accounts",
    "title": "Add a Fax Account to a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/fax_accounts -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddFaxAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/fax_interactions",
    "title": "Add fax interaction tabs to an agent",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/fax_interactions -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddFaxInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/mail_accounts",
    "title": "Add a Mail Account to a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/mail_accounts -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddMailAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/mail_interactions",
    "title": "Add mail interaction tabs to an agent",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/mail_interactions -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddMailInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/openchannel_accounts",
    "title": "Add a Open Channel Account to a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/openchannel_accounts -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddOpenchannelAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/openchannel_interactions",
    "title": "Add openchannel interaction tabs to an agent",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/openchannel_interactions -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddOpenchannelInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/sms_accounts",
    "title": "Add a Sms Account to a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/sms_accounts -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddSmsAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/sms_interactions",
    "title": "Add sms interaction tabs to an agent",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/sms_interactions -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddSmsInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/square_projects",
    "title": "Add a Square Project to a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/square_projects -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddSquareProjects",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/whatsapp_accounts",
    "title": "Add a Whatsapp Account to a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/whatsapp_accounts -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddWhatsappAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/whatsapp_interactions",
    "title": "Add Whatsapp interaction tabs to an agent",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/whatsapp_interactions -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddWhatsappInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>The name of the user</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "fullname",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "alias",
            "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": "whatsappPause",
            "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": "whatsappCapacity",
            "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": "<p>String is deprecated. Please use an Array as [&quot;udp&quot;, &quot;tcp&quot;]</p>"
          },
          {
            "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": "<p>String is deprecated. Please use an Array as [&quot;force_rport&quot;, &quot;comedia&quot;]</p>"
          },
          {
            "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": "<p>String is deprecated. Please use an Array as [&quot;ulaw&quot;, &quot;alaw&quot;, &quot;gsm&quot;]</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"yes\"",
              "\"no\""
            ],
            "optional": true,
            "field": "autoframing",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "insecure",
            "description": "<p>String is deprecated. Please use an Array as [&quot;port&quot;, &quot;invite&quot;]</p>"
          },
          {
            "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": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "phoneBarEnableJaws",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "phoneBarEnableScreenRecordingByAgent",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Virtual",
            "optional": true,
            "field": "phoneBarEnableVideoRecording",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "phoneBarEnableAutomaticScreenRecording",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "phoneBarPrefixRequired",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "hotdesk",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interface",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "privacyEnabled",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "apiKeyNonce",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "apiKeyIat",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "screenrecording",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "blocked",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "blockedAt",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "loginAttempts",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "disabled",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/api_key",
    "title": "Create a new API access key for the user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/:id/api_key -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateApiKey",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X GET",
        "type": "json"
      }
    ],
    "name": "GetAgents",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "get",
    "url": "/api/users/{id}/api_key",
    "title": "Get the API access key for the user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/:id/api_key -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetApiKey",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X GET",
        "type": "json"
      }
    ],
    "name": "GetChatGroups",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X GET",
        "type": "json"
      }
    ],
    "name": "GetChatInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "get",
    "url": "/api/users/{id}/chat_websites",
    "title": "GetChatWebsites",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/chat_websites -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetChatWebsites",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X GET",
        "type": "json"
      }
    ],
    "name": "GetContacts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "get",
    "url": "/api/users/{id}/fax_accounts",
    "title": "GetFaxAccounts",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/fax_accounts -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetFaxAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X GET",
        "type": "json"
      }
    ],
    "name": "GetFaxInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X GET",
        "type": "json"
      }
    ],
    "name": "GetLists",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "get",
    "url": "/api/users/{id}/mail_accounts",
    "title": "GetMailAccounts",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/mail_accounts -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetMailAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X GET",
        "type": "json"
      }
    ],
    "name": "GetMailInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "get",
    "url": "/api/users/{id}/openchannel_accounts",
    "title": "GetOpenchannelAccounts",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/openchannel_accounts -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetOpenchannelAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "get",
    "url": "/api/users/{id}/prefixes",
    "title": "GetPrefixes",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/prefixes -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetPrefixes",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X GET",
        "type": "json"
      }
    ],
    "name": "GetQueues",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X GET",
        "type": "json"
      }
    ],
    "name": "GetRecordings",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "get",
    "url": "/api/users/{id}/scheduled_calls",
    "title": "GetScheduledCalls",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/scheduled_calls -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetScheduledCalls",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "get",
    "url": "/api/users/{id}/screen_recordings",
    "title": "GetScreenRecordings",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/screen_recordings -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetScreenRecordings",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "get",
    "url": "/api/users/{id}/sms_accounts",
    "title": "GetSmsAccounts",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/sms_accounts -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetSmsAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X GET",
        "type": "json"
      }
    ],
    "name": "GetSmsInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "get",
    "url": "/api/users/{id}/square_projects",
    "title": "GetSquareProjects",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/square_projects -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetSquareProjects",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X GET",
        "type": "json"
      }
    ],
    "name": "GetTeams",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/users?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/users?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/users?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/users?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/users?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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} -X GET",
        "type": "json"
      }
    ],
    "name": "GetVoiceQueuesRt",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "get",
    "url": "/api/users/{id}/whatsapp_accounts",
    "title": "GetWhatsappAccounts",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/whatsapp_accounts -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetWhatsappAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "get",
    "url": "/api/users/{id}/whatsapp/interactions",
    "title": "GetWhatsappInteractions",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/whatsapp/interactions -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetWhatsappInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X POST",
        "type": "json"
      }
    ],
    "name": "Login",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X POST",
        "type": "json"
      }
    ],
    "name": "Logout",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X POST",
        "type": "json"
      }
    ],
    "name": "Pause",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/api_key",
    "title": "Remove API access key for the user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/:id/api_key -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveApiKey",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/chat_interactions",
    "title": "Removes interactions from an agent",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/chat_interactions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveChatInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/chat_websites",
    "title": "Removes a Chat Website from a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/chat_websites?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveChatWebsites",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/fax_accounts",
    "title": "Removes a Fax Account from a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/fax_accounts?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveFaxAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/fax_interactions",
    "title": "Removes interactions from an agent",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/fax_interactions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveFaxInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/mail_accounts",
    "title": "Removes a Mail Account from a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/mail_accounts?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveMailAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/mail_interactions",
    "title": "Removes interactions from an agent",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/mail_interactions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveMailInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/openchannel_accounts",
    "title": "Removes a Open Channel Account from a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/openchannel_accounts?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveOpenchannelAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/openchannel_interactions",
    "title": "Removes openchannel interactions from an agent",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/openchannel_interactions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveOpenchannelInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/sms_accounts",
    "title": "Removes a Sms Account from a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/sms_accounts?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveSmsAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/sms_interactions",
    "title": "Removes interactions from an agent",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/sms_interactions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveSmsInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/square_projects",
    "title": "Removes a Square Project from a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/square_projects?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveSquareProjects",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/whatsapp_accounts",
    "title": "Removes a Whatsapp Account from a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/whatsapp_accounts?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveWhatsappAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/whatsapp_interactions",
    "title": "Removes Whatsapp interactions from an agent",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/whatsapp_interactions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveWhatsappInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X POST",
        "type": "json"
      }
    ],
    "name": "Unpause",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "get",
    "url": "/api/users/whoami",
    "title": "WhoAmI",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/whoami -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "WhoAmI",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/variables?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/variables?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/variables?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/variables?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/variables?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion run the following command: git fetch origin master</p>",
    "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": "<p>Motion returns the current and latest motion version.</p>",
    "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": "<p>Motion launch the database migrations, according to the application version</p>",
    "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": "<p>Motion run the following command: git pull</p>",
    "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": "<p>Motion run the following command: git reset --hard FETCH_HEAD</p>",
    "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": "<p>Motion run the following command: pm2 restart motion</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/agents/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/agents/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/agents/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/agents/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/agents/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/calls/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/calls/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/calls/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/calls/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/calls/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/chanspy?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/chanspy?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/chanspy?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/chanspy?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/chanspy?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/contexts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/contexts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/contexts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/contexts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/contexts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/dials/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/dials/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/dials/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/dials/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/dials/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voiceDialReport/index.js",
    "groupTitle": "Voice_Dial_Reports"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/extensions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/extensions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/extensions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/extensions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/extensions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/mohs?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/mohs?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/mohs?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/mohs?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/mohs?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Integer",
            "optional": false,
            "field": "maxsecs",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": false,
            "field": "maxmsg",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Virtual",
            "optional": true,
            "field": "name",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/mails?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/mails?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/mails?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/mails?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/mails?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/mails/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/mails/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/mails/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/mails/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/mails/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voiceMailMessage/index.js",
    "groupTitle": "Voice_Messages"
  },
  {
    "type": "post",
    "url": "/api/voice/prefixes/{id}/users",
    "title": "Add agents to a prefix",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/prefixes/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddAgents",
    "group": "Voice_Prefixes",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voicePrefix/index.js",
    "groupTitle": "Voice_Prefixes"
  },
  {
    "type": "delete",
    "url": "/api/voice/prefixes/{id}",
    "title": "Deletes a Prefix",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/prefixes/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeletePrefixes",
    "group": "Voice_Prefixes",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voicePrefix/index.js",
    "groupTitle": "Voice_Prefixes"
  },
  {
    "type": "get",
    "url": "/api/voice/prefixes/describe",
    "title": "Gets table info about Prefixes",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/prefixes/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribePrefixes",
    "group": "Voice_Prefixes",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voicePrefix/index.js",
    "groupTitle": "Voice_Prefixes"
  },
  {
    "type": "get",
    "url": "/api/voice/prefixes/{id}/users",
    "title": "Gets agents from prefix",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/prefixes/{id}/users -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetAgents",
    "group": "Voice_Prefixes",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voicePrefix/index.js",
    "groupTitle": "Voice_Prefixes"
  },
  {
    "type": "get",
    "url": "/api/voice/prefixes",
    "title": "Gets a list of Prefixes",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/prefixes -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetPrefixes",
    "group": "Voice_Prefixes",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/prefixes?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/prefixes?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/prefixes?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/prefixes?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/prefixes?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/voicePrefix/index.js",
    "groupTitle": "Voice_Prefixes"
  },
  {
    "type": "delete",
    "url": "/api/voice/prefixes/{id}/users",
    "title": "Removes agents from a prefix",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/prefixes/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveAgents",
    "group": "Voice_Prefixes",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voicePrefix/index.js",
    "groupTitle": "Voice_Prefixes"
  },
  {
    "type": "get",
    "url": "/api/voice/prefixes/{id}",
    "title": "Gets a single Prefix",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/prefixes/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowPrefixes",
    "group": "Voice_Prefixes",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voicePrefix/index.js",
    "groupTitle": "Voice_Prefixes"
  },
  {
    "type": "put",
    "url": "/api/voice/prefixes/{id}",
    "title": "Update an existing prefix",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/prefixes/{id} -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "Update",
    "group": "Voice_Prefixes",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voicePrefix/index.js",
    "groupTitle": "Voice_Prefixes"
  },
  {
    "type": "post",
    "url": "/api/voice/prefixes",
    "title": "Create a prefix",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/prefixes -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "create",
    "group": "Voice_Prefixes",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voicePrefix/index.js",
    "groupTitle": "Voice_Prefixes"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/queues/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/queues/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/queues/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/queues/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/queues/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voiceQueueReport/index.js",
    "groupTitle": "Voice_Queue_Reports"
  },
  {
    "type": "get",
    "url": "/api/voice/queues/reports/index",
    "title": "Get Voice Queues Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/queues/reports/index -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getVoiceQueuesReport",
    "group": "Voice_Queue_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voiceQueue/index.js",
    "groupTitle": "Voice_Queues"
  },
  {
    "type": "post",
    "url": "/api/voice/queues/clone",
    "title": "Clone an existing Queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/queues/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CloneQueues",
    "group": "Voice_Queues",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": [
              "\"rr\"",
              "\"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": "Text",
            "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": "<p>Active/Disactive Campaign</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"preview\"",
              "\"progressive\"",
              "\"power\"",
              "\"predictive\"",
              "\"booked\""
            ],
            "optional": true,
            "field": "dialMethod",
            "description": "<p>Dial Method.</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialLimitChannel",
            "description": "<p>Max 9999 channels, 0 means unlimited.</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialLimitQueue",
            "description": "<p>Max 9999 member in queue(min:1, max:9999), 0 means unlimited.</p>"
          },
          {
            "group": "Body",
            "type": "Float",
            "optional": true,
            "field": "dialPowerLevel",
            "description": "<p>Power Level: Calls for agents (min:1, max:10).</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"agentBusyFactor\"",
              "\"dropRate\""
            ],
            "optional": true,
            "field": "dialPredictiveOptimization",
            "description": "<p>Only for predictive method.</p>"
          },
          {
            "group": "Body",
            "type": "Float",
            "optional": true,
            "field": "dialPredictiveOptimizationPercentage",
            "description": "<p>Predictive Optimization Percentage (min: 1, max: 95)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialPredictiveInterval",
            "description": "<p>Interval Predictive Minutes (min:5 max:30)</p>"
          },
          {
            "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": "<p>Originate Timeout Seconds (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "dialQueueOptions",
            "description": "<p>https://wiki.asterisk.org/wiki/display/AST/Asterisk+13+Application_Queue</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialQueueTimeout",
            "description": "<p>Queue Timeout Seconds (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "dialQueueProject",
            "description": "<p>AGI queue option (use: agi://127.0.0.1/square,&lt;project_name&gt;)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialCongestionMaxRetry",
            "description": "<p>#Congestion Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialCongestionRetryFrequency",
            "description": "<p>Congestion Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialBusyMaxRetry",
            "description": "<p>#Busy Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialBusyRetryFrequency",
            "description": "<p>Busy Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialNoAnswerMaxRetry",
            "description": "<p>#NoAnswer Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialNoAnswerRetryFrequency",
            "description": "<p>NoAnswer Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialGlobalMaxRetry",
            "description": "<p>#Global Max Retry (min:1, max:999)</p>"
          },
          {
            "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": "<p>Active/Disactive AMD</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDInitialSilence",
            "description": "<p>#AMD Initial Silence</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDGreeting",
            "description": "<p>#AMD Greeting</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDAfterGreetingSilence",
            "description": "<p>#AMD After Greeting Silence</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDTotalAnalysisTime",
            "description": "<p>#AMD Total Analysis Time</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDMinWordLength",
            "description": "<p>#AMD Min Word Length</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDBetweenWordsSilence",
            "description": "<p>#AMD Between Words Silence</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDMaximumNumberOfWords",
            "description": "<p>#AMD Maximum Number Of Words</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDSilenceThreshold",
            "description": "<p>#AMD Silence Threshold (min:0, max:32767)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDMaximumWordLength",
            "description": "<p>#AMD Maximum Word Length</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialRecallMeTimeout",
            "description": "<p>#RecallMe Timeout (min:1)</p>"
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "dialRecallInQueue",
            "description": "<p>Active/Disactive Recall In Queue</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"DESC\"",
              "\"ASC\""
            ],
            "optional": true,
            "field": "dialOrderByScheduledAt",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "dialQueueProject2",
            "description": "<p>AGI queue option (use: agi://127.0.0.1/square,&lt;project_name&gt;)</p>"
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "dialAgiAfterHangupClient",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "dialAgiAfterHangupAgent",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialRandomLastDigitCallerIdNumber",
            "description": "<p>Random Last Digit (min:1, max:15)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialCutDigit",
            "description": "<p>Cut Digit (min:1, max:15)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialNoSuchNumberMaxRetry",
            "description": "<p>#NoSuchNumber Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialNoSuchNumberRetryFrequency",
            "description": "<p>NoSuchNumber Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialDropMaxRetry",
            "description": "<p>#Drop Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialDropRetryFrequency",
            "description": "<p>Drop Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAbandonedMaxRetry",
            "description": "<p>#Abandoned Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAbandonedRetryFrequency",
            "description": "<p>Abandoned Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialMachineMaxRetry",
            "description": "<p>#Machine Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialMachineRetryFrequency",
            "description": "<p>Machine Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAgentRejectMaxRetry",
            "description": "<p>#AgentReject Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAgentRejectRetryFrequency",
            "description": "<p>AgentReject Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "mandatoryDispositionPauseId",
            "description": "<p>Status to put when mandatory disposition is enabled</p>"
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "mandatoryDisposition",
            "description": "<p>Enabled/disables mandatory dispo on a queue</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialPredictiveIntervalMaxThreshold",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialPredictiveIntervalMinThreshold",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "optional": true,
            "field": "location",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "transcribeName",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "transcribeStatus",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "fileUri",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "fileText",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "failureReason",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "sentiment",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Float",
            "optional": true,
            "field": "sPositive",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Float",
            "optional": true,
            "field": "sNegative",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Float",
            "optional": true,
            "field": "sNeutral",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Float",
            "optional": true,
            "field": "sMixed",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "tempSentiment",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "createdAt",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "updatedAt",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/recordings?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/recordings?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/recordings?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/recordings?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/recordings?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voiceRecording/index.js",
    "groupTitle": "Voice_Recordings"
  },
  {
    "type": "delete",
    "url": "/api/voice/recordings/{id}",
    "title": "Delete voice recording",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/recordings/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "destroy",
    "group": "Voice_Recordings",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voiceRecording/index.js",
    "groupTitle": "Voice_Recordings"
  },
  {
    "type": "get",
    "url": "/api/voice/recordings/{id}/downloads",
    "title": "Download Recording",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/recordings/{id}/downloads -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "downloads",
    "group": "Voice_Recordings",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voiceRecording/index.js",
    "groupTitle": "Voice_Recordings"
  },
  {
    "type": "get",
    "url": "/api/voice/recordings/{id}/transcribe",
    "title": "Run Transcribe Recording",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/recordings/{id}/transcribe -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "transcribe",
    "group": "Voice_Recordings",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voiceRecording/index.js",
    "groupTitle": "Voice_Recordings"
  },
  {
    "type": "post",
    "url": "/api/voice/recordings/{id}/transcribe",
    "title": "Run Transcribe Recording",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/recordings/{id}/transcribe -d '{\"runSentiment\": \"true\"}' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "transcribe",
    "group": "Voice_Recordings",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/transfers/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/transfers/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/transfers/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/transfers/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/transfers/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voiceTransferReport/index.js",
    "groupTitle": "Voice_Transfer_Reports"
  },
  {
    "type": "post",
    "url": "/api/integrations/vtiger/accounts",
    "title": "Creates a new Vtiger Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateVtiger_Accounts",
    "group": "Vtiger_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": false,
            "field": "username",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "moduleName",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "remoteUri",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "serverUrl",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "accessKey",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerAccount/index.js",
    "groupTitle": "Vtiger_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/integrations/vtiger/accounts/{id}",
    "title": "Deletes a Vtiger Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/accounts/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteVtiger_Accounts",
    "group": "Vtiger_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerAccount/index.js",
    "groupTitle": "Vtiger_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/vtiger/accounts",
    "title": "Gets a list of Vtiger Accounts",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/accounts -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetVtiger_Accounts",
    "group": "Vtiger_Accounts",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/vtiger/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/vtiger/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/vtiger/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/vtiger/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/vtiger/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerAccount/index.js",
    "groupTitle": "Vtiger_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/vtiger/accounts/{id}",
    "title": "Gets a single Vtiger Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/accounts/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowVtiger_Accounts",
    "group": "Vtiger_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerAccount/index.js",
    "groupTitle": "Vtiger_Accounts"
  },
  {
    "type": "post",
    "url": "/api/integrations/vtiger/accounts/{id}/configurations",
    "title": "Creates new configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addConfiguration",
    "group": "Vtiger_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerAccount/index.js",
    "groupTitle": "Vtiger_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/vtiger/accounts/{id}/configurations",
    "title": "Gets account configurations",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/accounts/{id}/configurations -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getConfigurations",
    "group": "Vtiger_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerAccount/index.js",
    "groupTitle": "Vtiger_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/vtiger/accounts/{id}/fields",
    "title": "Gets account fields",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/accounts/{id}/fields -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getFields",
    "group": "Vtiger_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerAccount/index.js",
    "groupTitle": "Vtiger_Accounts"
  },
  {
    "type": "put",
    "url": "/api/integrations/vtiger/accounts/{id}",
    "title": "Update an existing Vtiger Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateVtiger_Accounts",
    "group": "Vtiger_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerAccount/index.js",
    "groupTitle": "Vtiger_Accounts"
  },
  {
    "type": "post",
    "url": "/api/integrations/vtiger/configurations",
    "title": "Creates a new Vtiger Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateVtiger_Configurations",
    "group": "Vtiger_Configurations",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "name",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerConfiguration/index.js",
    "groupTitle": "Vtiger_Configurations"
  },
  {
    "type": "delete",
    "url": "/api/integrations/vtiger/configurations/{id}",
    "title": "Deletes a Vtiger Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/configurations/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteVtiger_Configurations",
    "group": "Vtiger_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerConfiguration/index.js",
    "groupTitle": "Vtiger_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/vtiger/configurations",
    "title": "Gets a list of Vtiger Configurations",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/configurations -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetVtiger_Configurations",
    "group": "Vtiger_Configurations",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/vtiger/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/vtiger/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/vtiger/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/vtiger/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/vtiger/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerConfiguration/index.js",
    "groupTitle": "Vtiger_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/vtiger/configurations/{id}",
    "title": "Gets a single Vtiger Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/configurations/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowVtiger_Configurations",
    "group": "Vtiger_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerConfiguration/index.js",
    "groupTitle": "Vtiger_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/vtiger/configurations/{id}/descriptions",
    "title": "Gets configurations descriptions",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/configurations/{id}/descriptions -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getDescriptions",
    "group": "Vtiger_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerConfiguration/index.js",
    "groupTitle": "Vtiger_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/vtiger/configurations/{id}/fields",
    "title": "Gets configurations fields",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/configurations/{id}/fields -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getFields",
    "group": "Vtiger_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerConfiguration/index.js",
    "groupTitle": "Vtiger_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/vtiger/configurations/{id}/subjects",
    "title": "Gets configurations subjects",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/configurations/{id}/subjects -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getSubjects",
    "group": "Vtiger_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerConfiguration/index.js",
    "groupTitle": "Vtiger_Configurations"
  },
  {
    "type": "put",
    "url": "/api/integrations/vtiger/configurations/{id}",
    "title": "Update an existing Vtiger Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateVtiger_Configurations",
    "group": "Vtiger_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerConfiguration/index.js",
    "groupTitle": "Vtiger_Configurations"
  },
  {
    "type": "post",
    "url": "/api/integrations/vtiger/fields",
    "title": "Creates a new Vtiger Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateVtiger_Fields",
    "group": "Vtiger_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerField/index.js",
    "groupTitle": "Vtiger_Fields"
  },
  {
    "type": "delete",
    "url": "/api/integrations/vtiger/fields/{id}",
    "title": "Deletes a Vtiger Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/fields/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteVtiger_Fields",
    "group": "Vtiger_Fields",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerField/index.js",
    "groupTitle": "Vtiger_Fields"
  },
  {
    "type": "get",
    "url": "/api/integrations/vtiger/fields",
    "title": "Gets a list of Vtiger Fields",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/fields -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetVtiger_Fields",
    "group": "Vtiger_Fields",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/vtiger/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/vtiger/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/vtiger/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/vtiger/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/vtiger/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerField/index.js",
    "groupTitle": "Vtiger_Fields"
  },
  {
    "type": "get",
    "url": "/api/integrations/vtiger/fields/{id}",
    "title": "Gets a single Vtiger Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/fields/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowVtiger_Fields",
    "group": "Vtiger_Fields",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerField/index.js",
    "groupTitle": "Vtiger_Fields"
  },
  {
    "type": "put",
    "url": "/api/integrations/vtiger/fields/{id}",
    "title": "Update an existing Vtiger Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateVtiger_Fields",
    "group": "Vtiger_Fields",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerField/index.js",
    "groupTitle": "Vtiger_Fields"
  },
  {
    "type": "post",
    "url": "/api/webbar/answer",
    "title": "answer webrtc call",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/webbar/answer -d '{\"sessionId\": \"<sessionId>\", \"userId\": 54}' \\\n -H \"Content-Type: application/json\" -X POST",
        "type": "json"
      }
    ],
    "name": "Web_Bar_answer",
    "group": "WebBar",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "sessionId",
            "description": ""
          },
          {
            "group": "Body",
            "type": "number",
            "optional": false,
            "field": "userId",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/webbar/index.js",
    "groupTitle": "WebBar"
  },
  {
    "type": "post",
    "url": "/api/webbar/calls",
    "title": "webrtc call list",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/webbar/calls -d '{\"userId\": 54}' \\\n -H \"Content-Type: application/json\" -X POST",
        "type": "json"
      }
    ],
    "name": "Web_Bar_calls",
    "group": "WebBar",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "number",
            "optional": false,
            "field": "userId",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/webbar/index.js",
    "groupTitle": "WebBar"
  },
  {
    "type": "post",
    "url": "/api/webbar/hangup",
    "title": "hangup webrtc call",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/webbar/hangup -d '{\"sessionId\": \"<sessionId>\", \"userId\": 54}' \\\n -H \"Content-Type: application/json\" -X POST",
        "type": "json"
      }
    ],
    "name": "Web_Bar_hangup",
    "group": "WebBar",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "sessionId",
            "description": ""
          },
          {
            "group": "Body",
            "type": "number",
            "optional": false,
            "field": "userId",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/webbar/index.js",
    "groupTitle": "WebBar"
  },
  {
    "type": "post",
    "url": "/api/webbar/hold",
    "title": "hold webrtc call",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/webbar/hold -d '{\"sessionId\": \"<sessionId>\", \"userId\": 54}' \\\n -H \"Content-Type: application/json\" -X POST",
        "type": "json"
      }
    ],
    "name": "Web_Bar_hold",
    "group": "WebBar",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "sessionId",
            "description": ""
          },
          {
            "group": "Body",
            "type": "number",
            "optional": false,
            "field": "userId",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/webbar/index.js",
    "groupTitle": "WebBar"
  },
  {
    "type": "post",
    "url": "/api/webbar/unhold",
    "title": "unhold webrtc call",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/webbar/unhold -d '{\"sessionId\": \"<sessionId>\", \"userId\": 54}' \\\n -H \"Content-Type: application/json\" -X POST",
        "type": "json"
      }
    ],
    "name": "Web_Bar_hold",
    "group": "WebBar",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "sessionId",
            "description": ""
          },
          {
            "group": "Body",
            "type": "number",
            "optional": false,
            "field": "userId",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/webbar/index.js",
    "groupTitle": "WebBar"
  },
  {
    "type": "post",
    "url": "/api/webbar/originate",
    "title": "Originate new webrtc call",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/webbar/originate -d '{\"callNumber\": \"0119692844\", \"userId\": 54}' \\\n -H \"Content-Type: application/json\" -X POST",
        "type": "json"
      }
    ],
    "name": "Web_Bar_originate",
    "group": "WebBar",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "callNumber",
            "description": ""
          },
          {
            "group": "Body",
            "type": "number",
            "optional": false,
            "field": "userId",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "callerId",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "callbackUrl",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/webbar/index.js",
    "groupTitle": "WebBar"
  },
  {
    "type": "post",
    "url": "/api/webbar/transfer",
    "title": "blind transfer webrtc call",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/webbar/transfer -d '{\"userId\": 54, \"sessionId\":\"<sessionId>\", \"transferNumber\":\"<transferNumber>\"}' \\\n -H \"Content-Type: application/json\" -X POST",
        "type": "json"
      }
    ],
    "name": "Web_Bar_transfer",
    "group": "WebBar",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "number",
            "optional": false,
            "field": "userId",
            "description": ""
          },
          {
            "group": "Body",
            "type": "string",
            "optional": false,
            "field": "sessionId",
            "description": ""
          },
          {
            "group": "Body",
            "type": "string",
            "optional": false,
            "field": "transferNumber",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/webbar/index.js",
    "groupTitle": "WebBar"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/accounts/{id}/users",
    "title": "Add agents to a whatsapp account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddAgents",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/accounts",
    "title": "Creates a new Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateAccounts",
    "group": "Whatsapp_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\""
            ],
            "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": "Text",
            "optional": true,
            "field": "notificationTemplate",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "notificationSound",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "notificationShake",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "waitForTheAssignedAgent",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "queueTransfer",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "queueTransferTimeout",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "agentTransfer",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "agentTransferTimeout",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "mandatoryDispositionPauseId",
            "description": "<p>Status to put when mandatory disposition is enabled</p>"
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "mandatoryDisposition",
            "description": "<p>Enabled/disables mandatory dispo on a queue</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/whatsapp/accounts/{id}",
    "title": "Deletes a Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteAccounts",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/accounts/describe",
    "title": "Gets table info about Accounts",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeAccounts",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/accounts",
    "title": "Gets a list of Accounts",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetAccounts",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/accounts/{id}/users",
    "title": "Gets agents from whatsapp account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/users -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetAgents",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/whatsapp/accounts/{id}/users",
    "title": "Removes agents from a whatsapp account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveAgents",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/whatsapp/accounts/{id}/canned_answers",
    "title": "Removes canned answers from account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveAnswers",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/whatsapp/accounts/{id}/dispositions",
    "title": "Removes dispositions from account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveDispositions",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/accounts/{id}",
    "title": "Gets a single Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowAccounts",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "put",
    "url": "/api/whatsapp/messages/{id}/accept",
    "title": "Accepts message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/messages/{id}/accept \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "acceptMessage",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappMessage/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/accounts/{id}/canned_answers",
    "title": "Creates new canned answer",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/canned_answers -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addAnswer",
    "group": "Whatsapp_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": ""
          },
          {
            "group": "Body",
            "type": "Virtual",
            "optional": true,
            "field": "name",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/accounts/{id}/applications",
    "title": "Creates new applications",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/applications -d '[{\"app\": \"queue\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addApplications",
    "group": "Whatsapp_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": "Text",
            "optional": true,
            "field": "appdata",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interval",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/accounts/{id}/dispositions",
    "title": "Creates new disposition",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/dispositions -d '{\"name\": \"vip\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addDisposition",
    "group": "Whatsapp_Accounts",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "name",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/accounts/{id}/canned_answers",
    "title": "Gets account canned answers",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/canned_answers -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getAnswers",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/accounts/{id}/applications",
    "title": "Gets account applications",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/applications -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getApplications",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/accounts/{id}/dispositions",
    "title": "Gets account dispositions",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/dispositions -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getDispositions",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/accounts/{id}/notify",
    "title": "Notify new message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/notify -d '{\"body\": \"hello world\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "notify",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <p>This API is used to create a new whatsapp message to be sent to the system.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "put",
    "url": "/api/whatsapp/messages/{id}/reject",
    "title": "Rejects message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "rejectMessage",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappMessage/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/accounts/{id}/send",
    "title": "Send new whatsapp message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/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": "sendWhatsapp",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/messages/{id}/status",
    "title": "Receive message status",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/messages/{id}/status \\ \n -H 'Content-Type: application/json' -v -X POST",
        "type": "json"
      }
    ],
    "name": "statusMessage",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappMessage/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "put",
    "url": "/api/whatsapp/accounts/{id}",
    "title": "Update an existing Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateAccounts",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/applications",
    "title": "Creates a new Application",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/applications -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateApplications",
    "group": "Whatsapp_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": "Text",
            "optional": true,
            "field": "appdata",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interval",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappApplication/index.js",
    "groupTitle": "Whatsapp_Applications"
  },
  {
    "type": "delete",
    "url": "/api/whatsapp/applications/{id}",
    "title": "Deletes a Application",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/applications/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteApplications",
    "group": "Whatsapp_Applications",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappApplication/index.js",
    "groupTitle": "Whatsapp_Applications"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/applications",
    "title": "Gets a list of Applications",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/applications -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetApplications",
    "group": "Whatsapp_Applications",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/applications?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/applications?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/applications?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/applications?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/applications?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappApplication/index.js",
    "groupTitle": "Whatsapp_Applications"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/applications/{id}",
    "title": "Gets a single Application",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/applications/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowApplications",
    "group": "Whatsapp_Applications",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappApplication/index.js",
    "groupTitle": "Whatsapp_Applications"
  },
  {
    "type": "put",
    "url": "/api/whatsapp/applications/{id}",
    "title": "Update an existing Application",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/applications/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateApplications",
    "group": "Whatsapp_Applications",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappApplication/index.js",
    "groupTitle": "Whatsapp_Applications"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/interactions/{id}/tags",
    "title": "Add tags to the interaction",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/interaction/{id}/tags -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddTags",
    "group": "Whatsapp_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappInteraction/index.js",
    "groupTitle": "Whatsapp_Interactions"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/interactions",
    "title": "Creates a new Interaction",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/interactions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateInteractions",
    "group": "Whatsapp_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappInteraction/index.js",
    "groupTitle": "Whatsapp_Interactions"
  },
  {
    "type": "delete",
    "url": "/api/whatsapp/interactions/{id}",
    "title": "Deletes a Interaction",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/interactions/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteInteractions",
    "group": "Whatsapp_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappInteraction/index.js",
    "groupTitle": "Whatsapp_Interactions"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/interactions/describe",
    "title": "Gets table info about Interactions",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/interactions/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeInteractions",
    "group": "Whatsapp_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappInteraction/index.js",
    "groupTitle": "Whatsapp_Interactions"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/interactions",
    "title": "Gets a list of Interactions",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/interactions -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetInteractions",
    "group": "Whatsapp_Interactions",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/interactions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/interactions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/interactions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/interactions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/interactions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappInteraction/index.js",
    "groupTitle": "Whatsapp_Interactions"
  },
  {
    "type": "delete",
    "url": "/api/whatsapp/interactions/{id}/tags",
    "title": "Removes tags from interaction",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/interactions/{id}/tags?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveTags",
    "group": "Whatsapp_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappInteraction/index.js",
    "groupTitle": "Whatsapp_Interactions"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/interactions/{id}",
    "title": "Gets a single Interaction",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/interactions/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowInteractions",
    "group": "Whatsapp_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappInteraction/index.js",
    "groupTitle": "Whatsapp_Interactions"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/interactions/{id}/messages",
    "title": "Creates new messages",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/interactions/{id}/messages -d '[{\"to\": \"+3901119886500\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addMessage",
    "group": "Whatsapp_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappInteraction/index.js",
    "groupTitle": "Whatsapp_Interactions"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/interactions/{id}/download",
    "title": "Gets interaction",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/interactions/{id}/download -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "download",
    "group": "Whatsapp_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappInteraction/index.js",
    "groupTitle": "Whatsapp_Interactions"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/interactions/{id}/messages",
    "title": "Gets interaction messages",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/interactions/{id}/messages -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getMessages",
    "group": "Whatsapp_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappInteraction/index.js",
    "groupTitle": "Whatsapp_Interactions"
  },
  {
    "type": "put",
    "url": "/api/whatsapp/interactions/{id}",
    "title": "Update an existing Interaction",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/interactions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateInteractions",
    "group": "Whatsapp_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappInteraction/index.js",
    "groupTitle": "Whatsapp_Interactions"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/messages",
    "title": "Creates a new Message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateMessages",
    "group": "Whatsapp_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappMessage/index.js",
    "groupTitle": "Whatsapp_Messages"
  },
  {
    "type": "delete",
    "url": "/api/whatsapp/messages/{id}",
    "title": "Deletes a Message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/messages/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteMessages",
    "group": "Whatsapp_Messages",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappMessage/index.js",
    "groupTitle": "Whatsapp_Messages"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/messages/describe",
    "title": "Gets table info about Messages",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/messages/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeMessages",
    "group": "Whatsapp_Messages",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappMessage/index.js",
    "groupTitle": "Whatsapp_Messages"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/messages",
    "title": "Gets a list of Messages",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/messages -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetMessages",
    "group": "Whatsapp_Messages",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappMessage/index.js",
    "groupTitle": "Whatsapp_Messages"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/messages/{id}",
    "title": "Gets a single Message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/messages/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowMessages",
    "group": "Whatsapp_Messages",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappMessage/index.js",
    "groupTitle": "Whatsapp_Messages"
  },
  {
    "type": "put",
    "url": "/api/whatsapp/messages/{id}",
    "title": "Update an existing Message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateMessages",
    "group": "Whatsapp_Messages",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappMessage/index.js",
    "groupTitle": "Whatsapp_Messages"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/reports/queue",
    "title": "Creates a new Whatsapp Queue Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/reports/queue -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateWhatsapp_Queue_Reports",
    "group": "Whatsapp_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueueReport/index.js",
    "groupTitle": "Whatsapp_Queue_Reports"
  },
  {
    "type": "delete",
    "url": "/api/whatsapp/reports/queue/{id}",
    "title": "Deletes a Whatsapp Queue Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/reports/queue/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteWhatsapp_Queue_Reports",
    "group": "Whatsapp_Queue_Reports",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueueReport/index.js",
    "groupTitle": "Whatsapp_Queue_Reports"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/reports/queue/describe",
    "title": "Gets table info about Whatsapp Queue Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/reports/queue/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeWhatsapp_Queue_Reports",
    "group": "Whatsapp_Queue_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueueReport/index.js",
    "groupTitle": "Whatsapp_Queue_Reports"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/reports/queue",
    "title": "Gets a list of Whatsapp Queue Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/reports/queue -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetWhatsapp_Queue_Reports",
    "group": "Whatsapp_Queue_Reports",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/reports/queue?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/reports/queue?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/reports/queue?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/reports/queue?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/reports/queue?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueueReport/index.js",
    "groupTitle": "Whatsapp_Queue_Reports"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/reports/queue/{id}",
    "title": "Gets a single Whatsapp Queue Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/reports/queue/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowWhatsapp_Queue_Reports",
    "group": "Whatsapp_Queue_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueueReport/index.js",
    "groupTitle": "Whatsapp_Queue_Reports"
  },
  {
    "type": "put",
    "url": "/api/whatsapp/reports/queue/{id}",
    "title": "Update an existing Whatsapp Queue Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/reports/queue/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateWhatsapp_Queue_Reports",
    "group": "Whatsapp_Queue_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueueReport/index.js",
    "groupTitle": "Whatsapp_Queue_Reports"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/queues/{id}/users",
    "title": "Add agents to a queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/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": "Whatsapp_Queues",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueue/index.js",
    "groupTitle": "Whatsapp_Queues"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/queues/{id}/teams",
    "title": "Add teams to a queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddTeams",
    "group": "Whatsapp_Queues",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueue/index.js",
    "groupTitle": "Whatsapp_Queues"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/queues",
    "title": "Creates a new Queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateQueues",
    "group": "Whatsapp_Queues",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "name",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "timeout",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"rrmemory\"",
              "\"beepall\"",
              "\"roundrobin\""
            ],
            "optional": true,
            "field": "strategy",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueue/index.js",
    "groupTitle": "Whatsapp_Queues"
  },
  {
    "type": "delete",
    "url": "/api/whatsapp/queues/{id}",
    "title": "Deletes a Queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/queues/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteQueues",
    "group": "Whatsapp_Queues",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueue/index.js",
    "groupTitle": "Whatsapp_Queues"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/queues/describe",
    "title": "Gets table info about Queues",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/queues/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeQueues",
    "group": "Whatsapp_Queues",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueue/index.js",
    "groupTitle": "Whatsapp_Queues"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/queues/{id}/users",
    "title": "Gets queue agents",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/queues/{id}/users -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "GetAgents",
    "group": "Whatsapp_Queues",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueue/index.js",
    "groupTitle": "Whatsapp_Queues"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/queues/{id}/members",
    "title": "GetMembers",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/queues/{id}/members  -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetMembers",
    "group": "Whatsapp_Queues",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueue/index.js",
    "groupTitle": "Whatsapp_Queues"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/queues",
    "title": "Gets a list of Queues",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/queues -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetQueues",
    "group": "Whatsapp_Queues",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueue/index.js",
    "groupTitle": "Whatsapp_Queues"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/queues/{id}/teams",
    "title": "Gets queues list",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/queues/{id}/teams -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetTeams",
    "group": "Whatsapp_Queues",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueue/index.js",
    "groupTitle": "Whatsapp_Queues"
  },
  {
    "type": "delete",
    "url": "/api/whatsapp/queues/{id}/users",
    "title": "Removes agents from a queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveAgents",
    "group": "Whatsapp_Queues",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueue/index.js",
    "groupTitle": "Whatsapp_Queues"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/queues/{id}",
    "title": "Gets a single Queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/queues/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowQueues",
    "group": "Whatsapp_Queues",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueue/index.js",
    "groupTitle": "Whatsapp_Queues"
  },
  {
    "type": "put",
    "url": "/api/whatsapp/queues/{id}",
    "title": "Update an existing Queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateQueues",
    "group": "Whatsapp_Queues",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueue/index.js",
    "groupTitle": "Whatsapp_Queues"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/reports/transfer",
    "title": "Creates a new Whatsapp Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/reports/transfer -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateWhatsapp_Transfer_Reports",
    "group": "Whatsapp_Transfer_Reports",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "uniqueid",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"account\"",
              "\"agent\"",
              "\"queue\""
            ],
            "optional": false,
            "field": "type",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "transferredAt",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappTransferReport/index.js",
    "groupTitle": "Whatsapp_Transfer_Reports"
  },
  {
    "type": "delete",
    "url": "/api/whatsapp/reports/transfer/{id}",
    "title": "Deletes a Whatsapp Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/reports/transfer/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteWhatsapp_Transfer_Reports",
    "group": "Whatsapp_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappTransferReport/index.js",
    "groupTitle": "Whatsapp_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/reports/transfer/describe",
    "title": "Gets table info about Whatsapp Transfer Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/reports/transfer/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeWhatsapp_Transfer_Reports",
    "group": "Whatsapp_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappTransferReport/index.js",
    "groupTitle": "Whatsapp_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/reports/transfer",
    "title": "Gets a list of Whatsapp Transfer Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/reports/transfer -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetWhatsapp_Transfer_Reports",
    "group": "Whatsapp_Transfer_Reports",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/reports/transfer?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/reports/transfer?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/reports/transfer?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/reports/transfer?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/reports/transfer?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappTransferReport/index.js",
    "groupTitle": "Whatsapp_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/reports/transfer/{id}",
    "title": "Gets a single Whatsapp Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/reports/transfer/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowWhatsapp_Transfer_Reports",
    "group": "Whatsapp_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappTransferReport/index.js",
    "groupTitle": "Whatsapp_Transfer_Reports"
  },
  {
    "type": "put",
    "url": "/api/whatsapp/reports/transfer/{id}",
    "title": "Update an existing Whatsapp Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/reports/transfer/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateWhatsapp_Transfer_Reports",
    "group": "Whatsapp_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappTransferReport/index.js",
    "groupTitle": "Whatsapp_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/zendesk/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/zendesk/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/zendesk/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/zendesk/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/zendesk/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/zendesk/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/zendesk/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/zendesk/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/zendesk/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/zendesk/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/zendesk/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/zendesk/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/zendesk/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/zendesk/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/zendesk/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "host",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "zone",
            "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": "serverUrl",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "code",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "refreshToken",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/zoho/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/zoho/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/zoho/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/zoho/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/zoho/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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",
            "allowedValues": [
              "\"lead\"",
              "\"contact\"",
              "\"nothing\""
            ],
            "optional": true,
            "field": "moduleCreate",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"contact_lead\"",
              "\"contact\"",
              "\"lead\""
            ],
            "optional": true,
            "field": "moduleSearch",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/zoho/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/zoho/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/zoho/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/zoho/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/zoho/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/zoho/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/zoho/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/zoho/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/zoho/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/zoho/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cdr/index.js",
    "groupTitle": "cdr"
  },
  {
    "type": "get",
    "url": "/api/cdr/describe",
    "title": "Gets table info about Cdrs",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cdr/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeCdrs",
    "group": "cdr",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cdr?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cdr?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cdr?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cdr?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cdr?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "data",
            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voiceQueuesLog?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voiceQueuesLog?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voiceQueuesLog?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voiceQueuesLog?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voiceQueuesLog?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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 3221e57..89e9ed4 100644
--- a/apidoc/api_data.json
+++ b/apidoc/api_data.json
@@ -1,38663 +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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/analytics/custom_reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/analytics/custom_reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/analytics/custom_reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/analytics/custom_reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/analytics/custom_reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/analytics/default_reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/analytics/default_reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/analytics/default_reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/analytics/default_reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/analytics/default_reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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",
-            "optional": false,
-            "field": "basename",
-            "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "reportId",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "reportType",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/analytics/extracted_reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/analytics/extracted_reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/analytics/extracted_reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/analytics/extracted_reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/analytics/extracted_reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "optional": true,
-            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "optional": true,
-            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/analytics/field_reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/analytics/field_reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/analytics/field_reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/analytics/field_reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/analytics/field_reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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 -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addFields",
-    "group": "Analytic_Field_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/analytics/metrics?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/analytics/metrics?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/analytics/metrics?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/analytics/metrics?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/analytics/metrics?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/analytics/tree_reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/analytics/tree_reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/analytics/tree_reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/analytics/tree_reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/analytics/tree_reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/analyticTreeReport/index.js",
-    "groupTitle": "Analytic_Tree_Reports"
-  },
-  {
-    "type": "post",
-    "url": "/api/attachments/clone",
-    "title": "Clone an existing Attachment",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/attachments/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CloneAttachments",
-    "group": "Attachments",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/attachment/index.js",
-    "groupTitle": "Attachments"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/attachments?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/attachments?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/attachments?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/attachments?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/attachments?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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\": \"[email-masked]\"}' \\\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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/automations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/automations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/automations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/automations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/automations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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\": \"[email-masked]\", \"...\": \"...\"}]' \\ \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": "<p>Allowed values: contactManager, integration, motionbar, jscripty, urlForward, browser, bot, script</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "data1",
-            "description": "<p>contactManager[ListId], integration[intName(zendesk)], motionbar[Popup(0),URL(1),WinApp(2)], urlForward[GET,POST], browser[TemplateId(0),URL(1)]</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "data2",
-            "description": "<p>integration[AccountId], motionbar[TemplateId,URL,WinAppPath], urlForward[URL]</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "data3",
-            "description": "<p>motionbar[NULL,NULL,WinAppArguments]</p>"
-          },
-          {
-            "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "data7",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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\": \"[email-masked]\", \"...\": \"...\"}]' \\ \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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/canned_answers?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/canned_answers?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/canned_answers?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/canned_answers?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/canned_answers?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cannedAnswer/index.js",
-    "groupTitle": "Canned_Answers"
-  },
-  {
-    "type": "get",
-    "url": "/chat/internal/users",
-    "title": "Gets Users Last Messages",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/chat/internal/users -v -u {name}:{password}  -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getLastUsersMessages",
-    "group": "ChatInternalMessage",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatInternalMessage/index.js",
-    "groupTitle": "ChatInternalMessage"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatApplication/index.js",
-    "groupTitle": "Chat_Applications"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/groups?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/groups?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/groups?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/groups?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/groups?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "closeReason",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "customerPort",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "vidaooSessionId",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/interactions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/interactions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/interactions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/interactions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/interactions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <p>This API is used to set as abandon an interaction and stop the routing.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatInteraction/index.js",
-    "groupTitle": "Chat_Interactions"
-  },
-  {
-    "type": "post",
-    "url": "/api/chat/interactions/{id}/vidaoo",
-    "title": "Create Vidaoo Session",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/interactions/{id}/vidaoo  -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "createVidaooSession",
-    "group": "Chat_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatInteraction/index.js",
-    "groupTitle": "Chat_Interactions"
-  },
-  {
-    "type": "put",
-    "url": "/api/chat/interactions/{id}/custom_update",
-    "title": "Update interaction",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/interactions/{id}/custom_update -d '{\"channel\": \"chat\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "customUpdate",
-    "group": "Chat_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <p>This API is used to update an interaction.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatInteraction/index.js",
-    "groupTitle": "Chat_Interactions"
-  },
-  {
-    "type": "get",
-    "url": "/api/chat/interactions/{id}/download",
-    "title": "Gets interaction",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/interactions/{id}/download -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "download",
-    "group": "Chat_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/internal/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/internal/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/internal/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/internal/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/internal/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/offline_messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/offline_messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/offline_messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/offline_messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/offline_messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/reports/queue?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/reports/queue?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/reports/queue?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/reports/queue?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/reports/queue?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatQueue/index.js",
-    "groupTitle": "Chat_Queues"
-  },
-  {
-    "type": "post",
-    "url": "/api/chat/reports/transfer",
-    "title": "Creates a new Chat Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/reports/transfer -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateChat_Transfer_Reports",
-    "group": "Chat_Transfer_Reports",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "uniqueid",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"account\"",
-              "\"agent\"",
-              "\"queue\""
-            ],
-            "optional": false,
-            "field": "type",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "transferredAt",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatTransferReport/index.js",
-    "groupTitle": "Chat_Transfer_Reports"
-  },
-  {
-    "type": "delete",
-    "url": "/api/chat/reports/transfer/{id}",
-    "title": "Deletes a Chat Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/reports/transfer/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteChat_Transfer_Reports",
-    "group": "Chat_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatTransferReport/index.js",
-    "groupTitle": "Chat_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/chat/reports/transfer/describe",
-    "title": "Gets table info about Chat Transfer Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/reports/transfer/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeChat_Transfer_Reports",
-    "group": "Chat_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatTransferReport/index.js",
-    "groupTitle": "Chat_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/chat/reports/transfer",
-    "title": "Gets a list of Chat Transfer Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/reports/transfer -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetChat_Transfer_Reports",
-    "group": "Chat_Transfer_Reports",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/reports/transfer?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/reports/transfer?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/reports/transfer?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/reports/transfer?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/reports/transfer?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatTransferReport/index.js",
-    "groupTitle": "Chat_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/chat/reports/transfer/{id}",
-    "title": "Gets a single Chat Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/reports/transfer/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowChat_Transfer_Reports",
-    "group": "Chat_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatTransferReport/index.js",
-    "groupTitle": "Chat_Transfer_Reports"
-  },
-  {
-    "type": "put",
-    "url": "/api/chat/reports/transfer/{id}",
-    "title": "Update an existing Chat Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/reports/transfer/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateChat_Transfer_Reports",
-    "group": "Chat_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatTransferReport/index.js",
-    "groupTitle": "Chat_Transfer_Reports"
-  },
-  {
-    "type": "post",
-    "url": "/api/chat/websites/{id}/users",
-    "title": "Add agents to a website",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/websites/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddAgents",
-    "group": "Chat_Websites",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatWebsite/index.js",
-    "groupTitle": "Chat_Websites"
-  },
-  {
-    "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": true,
-            "field": "customerAlias",
-            "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": "Boolean",
-            "optional": true,
-            "field": "enableSendButton",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "feedbackTitle",
-            "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": "Boolean",
-            "optional": true,
-            "field": "enableCustomerCheckmarks",
-            "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "notificationTemplate",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "notificationSound",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "notificationShake",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "hideWhenOffline",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "agentIdentifier",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "waitForTheAssignedAgent",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "alignment",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "verticalAlignment",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "messagesAlignment",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "defaultTitle",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "customerAvatar",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "showCustomerAvatar",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "messageFontSize",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "backgroundColor",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "queueTransfer",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "queueTransferTimeout",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "agentTransfer",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "agentTransferTimeout",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "systemAlias",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "systemAvatar",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "mandatoryDispositionPauseId",
-            "description": "<p>Status to put when mandatory disposition is enabled</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "mandatoryDisposition",
-            "description": "<p>Enabled/disables mandatory dispo on a queue</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "vidaooEscalation",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "vidaooApiKey",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatWebsite/index.js",
-    "groupTitle": "Chat_Websites"
-  },
-  {
-    "type": "get",
-    "url": "/api/chat/websites/{id}/users",
-    "title": "Gets agents from website",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/websites/{id}/users -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetAgents",
-    "group": "Chat_Websites",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/websites?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/websites?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/websites?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/websites?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/websites?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatWebsite/index.js",
-    "groupTitle": "Chat_Websites"
-  },
-  {
-    "type": "delete",
-    "url": "/api/chat/websites/{id}/users",
-    "title": "Removes agents from a website",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/websites/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveAgents",
-    "group": "Chat_Websites",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatWebsite/index.js",
-    "groupTitle": "Chat_Websites"
-  },
-  {
-    "type": "delete",
-    "url": "/api/chat/websites/{id}/canned_answers",
-    "title": "Removes canned answers from account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/websites/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveAnswers",
-    "group": "Chat_Websites",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatWebsite/index.js",
-    "groupTitle": "Chat_Websites"
-  },
-  {
-    "type": "delete",
-    "url": "/api/chat/websites/{id}/dispositions",
-    "title": "Removes canned answers from account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/websites/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveDispositions",
-    "group": "Chat_Websites",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Virtual",
-            "optional": true,
-            "field": "name",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "optional": true,
-            "field": "appdata",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interval",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatWebsite/index.js",
-    "groupTitle": "Chat_Websites"
-  },
-  {
-    "type": "post",
-    "url": "/api/chat/websites/{id}/customer_avatar",
-    "title": "Add customer avatar",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/websites/{id}/customer_avatar -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addCustomerAvatar",
-    "group": "Chat_Websites",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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\": \"vip\"}' -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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "closeReason",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "customerPort",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "vidaooSessionId",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatWebsite/index.js",
-    "groupTitle": "Chat_Websites"
-  },
-  {
-    "type": "post",
-    "url": "/api/chat/websites/{id}/system_avatar",
-    "title": "Add system avatar",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/websites/{id}/system_avatar -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addSystemAvatar",
-    "group": "Chat_Websites",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatWebsite/index.js",
-    "groupTitle": "Chat_Websites"
-  },
-  {
-    "type": "get",
-    "url": "/api/chat/websites/{id}/customer_avatar",
-    "title": "Get Customer Avatar",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/websites/{id}/customer_avatar -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getCustomerAvatar",
-    "group": "Chat_Websites",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatWebsite/index.js",
-    "groupTitle": "Chat_Websites"
-  },
-  {
-    "type": "get",
-    "url": "/api/chat/websites/{id}/dispositions",
-    "title": "Gets account 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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatWebsite/index.js",
-    "groupTitle": "Chat_Websites"
-  },
-  {
-    "type": "get",
-    "url": "/api/chat/websites/{id}/system_avatar",
-    "title": "Get System Avatar",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/chat/websites/{id}/system_avatar -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getSystemAvatar",
-    "group": "Chat_Websites",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <p>This API is used to create a new chat message to be sent to the system.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatWebsite/index.js",
-    "groupTitle": "Chat_Websites"
-  },
-  {
-    "type": "post",
-    "url": "/api/cloudProviders",
-    "title": "Creates a new CloudProvider",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cloudProviders -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateCloudProviders",
-    "group": "CloudProviders",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "name",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"AmazonAWS\"",
-              "\"Google\""
-            ],
-            "optional": false,
-            "field": "service",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "data1",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "data2",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cloudProvider/index.js",
-    "groupTitle": "CloudProviders"
-  },
-  {
-    "type": "delete",
-    "url": "/api/cloudProviders/{id}",
-    "title": "Deletes a CloudProvider",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cloudProviders/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteCloudProviders",
-    "group": "CloudProviders",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cloudProvider/index.js",
-    "groupTitle": "CloudProviders"
-  },
-  {
-    "type": "get",
-    "url": "/api/cloudProviders",
-    "title": "Gets a list of CloudProviders",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cloudProviders -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetCloudProviders",
-    "group": "CloudProviders",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cloudProviders?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cloudProviders?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cloudProviders?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cloudProviders?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cloudProviders?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/cloudProvider/index.js",
-    "groupTitle": "CloudProviders"
-  },
-  {
-    "type": "get",
-    "url": "/api/cloudProviders/{id}",
-    "title": "Gets a single CloudProvider",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cloudProviders/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowCloudProviders",
-    "group": "CloudProviders",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cloudProvider/index.js",
-    "groupTitle": "CloudProviders"
-  },
-  {
-    "type": "put",
-    "url": "/api/cloudProviders/{id}",
-    "title": "Update an existing CloudProvider",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cloudProviders/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateCloudProviders",
-    "group": "CloudProviders",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cloudProvider/index.js",
-    "groupTitle": "CloudProviders"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmCompany/index.js",
-    "groupTitle": "Cm_Companies"
-  },
-  {
-    "type": "get",
-    "url": "/api/cm/companies/describe",
-    "title": "Gets table info about Companies",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cm/companies/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeCompanies",
-    "group": "Cm_Companies",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/companies?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/companies?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/companies?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/companies?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/companies?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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\": \"[email-masked]\", \"...\": \"...\"}]' \\ \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": "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": true,
-            "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": "fb_data",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "twitter",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "skype",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "teams",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "viber",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "line",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "wechat",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "telegram",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "UserId",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "priority",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "scheduledat",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmContact/index.js",
-    "groupTitle": "Cm_Contacts"
-  },
-  {
-    "type": "get",
-    "url": "/api/cm/contacts",
-    "title": "Gets a list of Contacts",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cm/contacts -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetContacts",
-    "group": "Cm_Contacts",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/contacts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/contacts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/contacts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/contacts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/contacts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmContact/index.js",
-    "groupTitle": "Cm_Contacts"
-  },
-  {
-    "type": "post",
-    "url": "/api/cm/contacts/create_many",
-    "title": "Create Contacts",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cm/contacts/create_many -d '[{\"firstName\": \"John\", \"lastName\": \"doe\", \"...\": \"...\"}]' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "bulkCreate",
-    "group": "Cm_Contacts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmContact/index.js",
-    "groupTitle": "Cm_Contacts"
-  },
-  {
-    "type": "get",
-    "url": "/api/cm/contacts/{id}/tags",
-    "title": "Gets configurations tags",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cm/contacts/{id}/tags -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getTags",
-    "group": "Cm_Contacts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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 '{\"from\": 1, \"to\": 2}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "merge",
-    "group": "Cm_Contacts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmContact/index.js",
-    "groupTitle": "Cm_Contacts"
-  },
-  {
-    "type": "post",
-    "url": "/api/cm/contacts/{id}/tags",
-    "title": "Sets new tags",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cm/contacts/{id}/tags -d '{\"ids\": [1,12]}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "setTags",
-    "group": "Cm_Contacts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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 '{\"firstName\": \"John\", \"lastName\": \"Doe\"}' -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "update",
-    "group": "Cm_Contacts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/custom_fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/custom_fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/custom_fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/custom_fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/custom_fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "countnosuchnumberretry",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "countdropretry",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "countabandonedretry",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "countmachineretry",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "countagentrejectretry",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/hopper?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/hopper?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/hopper?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/hopper?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/hopper?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/hopper_black?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/hopper_black?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/hopper_black?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/hopper_black?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/hopper_black?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmHopperBlack/index.js",
-    "groupTitle": "Cm_Hopper_Black"
-  },
-  {
-    "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\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "/checkContactHopper",
-    "group": "Cm_Hopper_Final",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmHopperFinal/index.js",
-    "groupTitle": "Cm_Hopper_Final"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/hopper_final?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/hopper_final?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/hopper_final?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/hopper_final?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/hopper_final?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "originatecalleridnum",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "originatecalleridname",
-            "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "countnosuchnumberretry",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "countdropretry",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "countabandonedretry",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "countmachineretry",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "countagentrejectretry",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/hopper_history?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/hopper_history?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/hopper_history?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/hopper_history?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/hopper_history?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "dialPrefix",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmList/index.js",
-    "groupTitle": "Cm_Lists"
-  },
-  {
-    "type": "get",
-    "url": "/api/cm/lists/describe",
-    "title": "Gets table info about Lists",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cm/lists/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeLists",
-    "group": "Cm_Lists",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/lists?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/lists?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/lists?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/lists?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/lists?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmList/index.js",
-    "groupTitle": "Cm_Lists"
-  },
-  {
-    "type": "delete",
-    "url": "/api/cm/lists/{id}/dispositions",
-    "title": "Removes dispositions from account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cm/lists/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveDispositions",
-    "group": "Cm_Lists",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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\": \"[email-masked]\", \"...\": \"...\"}]' \\ \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": "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": true,
-            "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": "fb_data",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "twitter",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "skype",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "teams",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "viber",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "line",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "wechat",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "telegram",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "UserId",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "priority",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "scheduledat",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmList/index.js",
-    "groupTitle": "Cm_Lists"
-  },
-  {
-    "type": "post",
-    "url": "/api/cm/lists/{id}/dispositions",
-    "title": "Creates new disposition",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cm/lists/{id}/dispositions -d '{\"name\": \"vip\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addDisposition",
-    "group": "Cm_Lists",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "name",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmList/index.js",
-    "groupTitle": "Cm_Lists"
-  },
-  {
-    "type": "get",
-    "url": "/api/cm/lists/{id}/dispositions",
-    "title": "Gets list 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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmList/index.js",
-    "groupTitle": "Cm_Lists"
-  },
-  {
-    "type": "post",
-    "url": "/api/cm/contacts/upload/:id",
-    "title": "Import new contacts by csv",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cm/contacts/upload/:id -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "import",
-    "group": "Cm_contacts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmContact/index.js",
-    "groupTitle": "Cm_contacts"
-  },
-  {
-    "type": "post",
-    "url": "/api/cm/contacts/upload",
-    "title": "Upload csv",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cm/contacts/upload -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "upload",
-    "group": "Cm_contacts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cmContact/index.js",
-    "groupTitle": "Cm_contacts"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/dashboards?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/dashboards?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/dashboards?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/dashboards?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/dashboards?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Dashboards",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/dashboard/index.js",
-    "groupTitle": "Dashboards"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/desk/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/desk/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/desk/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/desk/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/desk/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/desk/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/desk/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/desk/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/desk/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/desk/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/desk/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/desk/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/desk/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/desk/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/desk/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDeskField/index.js",
-    "groupTitle": "Desk_Fields"
-  },
-  {
-    "type": "post",
-    "url": "/api/dispositions",
-    "title": "Creates a new Disposition",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateDispositions",
-    "group": "Dispositions",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "name",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/disposition/index.js",
-    "groupTitle": "Dispositions"
-  },
-  {
-    "type": "delete",
-    "url": "/api/dispositions/{id}",
-    "title": "Deletes a Disposition",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/dispositions/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteDispositions",
-    "group": "Dispositions",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/disposition/index.js",
-    "groupTitle": "Dispositions"
-  },
-  {
-    "type": "get",
-    "url": "/api/dispositions",
-    "title": "Gets a list of Dispositions",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/dispositions -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetDispositions",
-    "group": "Dispositions",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/dispositions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/dispositions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/dispositions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/dispositions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/dispositions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/disposition/index.js",
-    "groupTitle": "Dispositions"
-  },
-  {
-    "type": "get",
-    "url": "/api/dispositions/{id}",
-    "title": "Gets a single Disposition",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/dispositions/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowDispositions",
-    "group": "Dispositions",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/disposition/index.js",
-    "groupTitle": "Dispositions"
-  },
-  {
-    "type": "put",
-    "url": "/api/dispositions/{id}",
-    "title": "Update an existing Disposition",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateDispositions",
-    "group": "Dispositions",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/disposition/index.js",
-    "groupTitle": "Dispositions"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/dynamics365/accounts",
-    "title": "Creates a new Dynamics365 Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateDynamics365_Accounts",
-    "group": "Dynamics365_Accounts",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "name",
-            "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": "tenantId",
-            "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": "serverUrl",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Account/index.js",
-    "groupTitle": "Dynamics365_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/integrations/dynamics365/accounts/{id}",
-    "title": "Deletes a Dynamics365 Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/accounts/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteDynamics365_Accounts",
-    "group": "Dynamics365_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Account/index.js",
-    "groupTitle": "Dynamics365_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/dynamics365/accounts",
-    "title": "Gets a list of Dynamics365 Accounts",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/accounts -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetDynamics365_Accounts",
-    "group": "Dynamics365_Accounts",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/dynamics365/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/dynamics365/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/dynamics365/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/dynamics365/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/dynamics365/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Account/index.js",
-    "groupTitle": "Dynamics365_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/dynamics365/accounts/{id}",
-    "title": "Gets a single Dynamics365 Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/accounts/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowDynamics365_Accounts",
-    "group": "Dynamics365_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Account/index.js",
-    "groupTitle": "Dynamics365_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/dynamics365/accounts/{id}/configurations",
-    "title": "Creates new configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addConfiguration",
-    "group": "Dynamics365_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Account/index.js",
-    "groupTitle": "Dynamics365_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/dynamics365/accounts/{id}/configurations",
-    "title": "Gets account configurations",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/accounts/{id}/configurations -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getConfigurations",
-    "group": "Dynamics365_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Account/index.js",
-    "groupTitle": "Dynamics365_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/dynamics365/accounts/{id}/fields",
-    "title": "Gets account fields",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/accounts/{id}/fields -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getFields",
-    "group": "Dynamics365_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Account/index.js",
-    "groupTitle": "Dynamics365_Accounts"
-  },
-  {
-    "type": "put",
-    "url": "/api/integrations/dynamics365/accounts/{id}",
-    "title": "Update an existing Dynamics365 Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateDynamics365_Accounts",
-    "group": "Dynamics365_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Account/index.js",
-    "groupTitle": "Dynamics365_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/dynamics365/configurations",
-    "title": "Creates a new Dynamics365 Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateDynamics365_Configurations",
-    "group": "Dynamics365_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": [
-              "\"incident\"",
-              "\"phonecall\""
-            ],
-            "optional": true,
-            "field": "ticketType",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Configuration/index.js",
-    "groupTitle": "Dynamics365_Configurations"
-  },
-  {
-    "type": "delete",
-    "url": "/api/integrations/dynamics365/configurations/{id}",
-    "title": "Deletes a Dynamics365 Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/configurations/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteDynamics365_Configurations",
-    "group": "Dynamics365_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Configuration/index.js",
-    "groupTitle": "Dynamics365_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/dynamics365/configurations",
-    "title": "Gets a list of Dynamics365 Configurations",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/configurations -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetDynamics365_Configurations",
-    "group": "Dynamics365_Configurations",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/dynamics365/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/dynamics365/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/dynamics365/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/dynamics365/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/dynamics365/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Configuration/index.js",
-    "groupTitle": "Dynamics365_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/dynamics365/configurations/{id}",
-    "title": "Gets a single Dynamics365 Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/configurations/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowDynamics365_Configurations",
-    "group": "Dynamics365_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Configuration/index.js",
-    "groupTitle": "Dynamics365_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/dynamics365/configurations/{id}/descriptions",
-    "title": "Gets configurations descriptions",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/configurations/{id}/descriptions -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getDescriptions",
-    "group": "Dynamics365_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Configuration/index.js",
-    "groupTitle": "Dynamics365_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/dynamics365/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": "Dynamics365_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Configuration/index.js",
-    "groupTitle": "Dynamics365_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/zoho/configurations/{id}/subjects",
-    "title": "Gets configurations subjects",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/configurations/{id}/subjects -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getSubjects",
-    "group": "Dynamics365_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Configuration/index.js",
-    "groupTitle": "Dynamics365_Configurations"
-  },
-  {
-    "type": "put",
-    "url": "/api/integrations/dynamics365/configurations/{id}",
-    "title": "Update an existing Dynamics365 Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateDynamics365_Configurations",
-    "group": "Dynamics365_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Configuration/index.js",
-    "groupTitle": "Dynamics365_Configurations"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/dynamics365/fields",
-    "title": "Creates a new Dynamics365 Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateDynamics365_Fields",
-    "group": "Dynamics365_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Field/index.js",
-    "groupTitle": "Dynamics365_Fields"
-  },
-  {
-    "type": "delete",
-    "url": "/api/integrations/dynamics365/fields/{id}",
-    "title": "Deletes a Dynamics365 Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/fields/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteDynamics365_Fields",
-    "group": "Dynamics365_Fields",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Field/index.js",
-    "groupTitle": "Dynamics365_Fields"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/dynamics365/fields",
-    "title": "Gets a list of Dynamics365 Fields",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/fields -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetDynamics365_Fields",
-    "group": "Dynamics365_Fields",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/dynamics365/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/dynamics365/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/dynamics365/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/dynamics365/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/dynamics365/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Field/index.js",
-    "groupTitle": "Dynamics365_Fields"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/dynamics365/fields/{id}",
-    "title": "Gets a single Dynamics365 Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/fields/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowDynamics365_Fields",
-    "group": "Dynamics365_Fields",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Field/index.js",
-    "groupTitle": "Dynamics365_Fields"
-  },
-  {
-    "type": "put",
-    "url": "/api/integrations/dynamics365/fields/{id}",
-    "title": "Update an existing Dynamics365 Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/dynamics365/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateDynamics365_Fields",
-    "group": "Dynamics365_Fields",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intDynamics365Field/index.js",
-    "groupTitle": "Dynamics365_Fields"
-  },
-  {
-    "type": "post",
-    "url": "/api/fax/accounts/{id}/users",
-    "title": "Add agents to a fax account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/fax/accounts/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddAgents",
-    "group": "Fax_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxAccount/index.js",
-    "groupTitle": "Fax_Accounts"
-  },
-  {
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "notificationTemplate",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "notificationSound",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "notificationShake",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "waitForTheAssignedAgent",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "queueTransfer",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "queueTransferTimeout",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "agentTransfer",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "agentTransferTimeout",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "mandatoryDispositionPauseId",
-            "description": "<p>Status to put when mandatory disposition is enabled</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "mandatoryDisposition",
-            "description": "<p>Enabled/disables mandatory dispo on a queue</p>"
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxAccount/index.js",
-    "groupTitle": "Fax_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/fax/accounts/{id}/users",
-    "title": "Gets agents from fax account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/fax/accounts/{id}/users -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetAgents",
-    "group": "Fax_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxAccount/index.js",
-    "groupTitle": "Fax_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/fax/accounts/{id}/users",
-    "title": "Removes agents from a fax account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/fax/accounts/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveAgents",
-    "group": "Fax_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxAccount/index.js",
-    "groupTitle": "Fax_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/fax/accounts/{id}/dispositions",
-    "title": "Removes dispositions from account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/fax/accounts/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveDispositions",
-    "group": "Fax_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Virtual",
-            "optional": true,
-            "field": "name",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "optional": true,
-            "field": "appdata",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interval",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "optional": true,
-            "field": "appdata",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interval",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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\": \"vip\"}' -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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "optional": true,
-            "field": "appdata",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interval",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "optional": true,
-            "field": "appdata",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interval",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/applications?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/applications?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/applications?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/applications?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/applications?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxApplication/index.js",
-    "groupTitle": "Fax_Applications"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/interactions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/interactions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/interactions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/interactions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/interactions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxInteraction/index.js",
-    "groupTitle": "Fax_Interactions"
-  },
-  {
-    "type": "get",
-    "url": "/api/fax/interactions/{id}/download",
-    "title": "Get interactions",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/fax/interactions/{id}/download -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "download",
-    "group": "Fax_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxInteraction/index.js",
-    "groupTitle": "Fax_Interactions"
-  },
-  {
-    "type": "get",
-    "url": "/api/fax/messages/{id}/download",
-    "title": "Get message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/fax/messages/{id}/download -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "download",
-    "group": "Fax_Message",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxMessage/index.js",
-    "groupTitle": "Fax_Message"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/reports/queue?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/reports/queue?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/reports/queue?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/reports/queue?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/reports/queue?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxQueue/index.js",
-    "groupTitle": "Fax_Queues"
-  },
-  {
-    "type": "post",
-    "url": "/api/fax/reports/transfer",
-    "title": "Creates a new Fax Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/fax/reports/transfer -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateFax_Transfer_Reports",
-    "group": "Fax_Transfer_Reports",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "uniqueid",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"account\"",
-              "\"agent\"",
-              "\"queue\""
-            ],
-            "optional": false,
-            "field": "type",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "transferredAt",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxTransferReport/index.js",
-    "groupTitle": "Fax_Transfer_Reports"
-  },
-  {
-    "type": "delete",
-    "url": "/api/fax/reports/transfer/{id}",
-    "title": "Deletes a Fax Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/fax/reports/transfer/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteFax_Transfer_Reports",
-    "group": "Fax_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxTransferReport/index.js",
-    "groupTitle": "Fax_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/fax/reports/transfer/describe",
-    "title": "Gets table info about Fax Transfer Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/fax/reports/transfer/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeFax_Transfer_Reports",
-    "group": "Fax_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxTransferReport/index.js",
-    "groupTitle": "Fax_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/fax/reports/transfer",
-    "title": "Gets a list of Fax Transfer Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/fax/reports/transfer -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetFax_Transfer_Reports",
-    "group": "Fax_Transfer_Reports",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/reports/transfer?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/reports/transfer?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/reports/transfer?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/reports/transfer?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/reports/transfer?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxTransferReport/index.js",
-    "groupTitle": "Fax_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/fax/reports/transfer/{id}",
-    "title": "Gets a single Fax Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/fax/reports/transfer/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowFax_Transfer_Reports",
-    "group": "Fax_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxTransferReport/index.js",
-    "groupTitle": "Fax_Transfer_Reports"
-  },
-  {
-    "type": "put",
-    "url": "/api/fax/reports/transfer/{id}",
-    "title": "Update an existing Fax Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/fax/reports/transfer/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateFax_Transfer_Reports",
-    "group": "Fax_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxTransferReport/index.js",
-    "groupTitle": "Fax_Transfer_Reports"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/freshdesk/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/freshdesk/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/freshdesk/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/freshdesk/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/freshdesk/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/freshdesk/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/freshdesk/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/freshdesk/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/freshdesk/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/freshdesk/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/freshdesk/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/freshdesk/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/freshdesk/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/freshdesk/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/freshdesk/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshdeskField/index.js",
-    "groupTitle": "Freshdesk_Fields"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/freshsales/accounts",
-    "title": "Creates a new Freshsales Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateFreshsales_Accounts",
-    "group": "Freshsales_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesAccount/index.js",
-    "groupTitle": "Freshsales_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/integrations/freshsales/accounts/{id}",
-    "title": "Deletes a Freshsales Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/accounts/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteFreshsales_Accounts",
-    "group": "Freshsales_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesAccount/index.js",
-    "groupTitle": "Freshsales_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/freshsales/accounts",
-    "title": "Gets a list of Freshsales Accounts",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/accounts -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetFreshsales_Accounts",
-    "group": "Freshsales_Accounts",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/freshsales/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/freshsales/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/freshsales/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/freshsales/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/freshsales/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesAccount/index.js",
-    "groupTitle": "Freshsales_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/freshsales/accounts/{id}",
-    "title": "Gets a single Freshsales Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/accounts/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowFreshsales_Accounts",
-    "group": "Freshsales_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesAccount/index.js",
-    "groupTitle": "Freshsales_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/freshsales/accounts/{id}/configurations",
-    "title": "Creates new configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addConfiguration",
-    "group": "Freshsales_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesAccount/index.js",
-    "groupTitle": "Freshsales_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/freshsales/accounts/{id}/configurations",
-    "title": "Gets account configurations",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/accounts/{id}/configurations -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getConfigurations",
-    "group": "Freshsales_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesAccount/index.js",
-    "groupTitle": "Freshsales_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/freshsales/accounts/{id}/fields",
-    "title": "Gets account fields",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/accounts/{id}/fields -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getFields",
-    "group": "Freshsales_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesAccount/index.js",
-    "groupTitle": "Freshsales_Accounts"
-  },
-  {
-    "type": "put",
-    "url": "/api/integrations/freshsales/accounts/{id}",
-    "title": "Update an existing Freshsales Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateFreshsales_Accounts",
-    "group": "Freshsales_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesAccount/index.js",
-    "groupTitle": "Freshsales_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/freshsales/configurations",
-    "title": "Creates a new Freshsales Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateFreshsales_Configurations",
-    "group": "Freshsales_Configurations",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "name",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesConfiguration/index.js",
-    "groupTitle": "Freshsales_Configurations"
-  },
-  {
-    "type": "delete",
-    "url": "/api/integrations/freshsales/configurations/{id}",
-    "title": "Deletes a Freshsales Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/configurations/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteFreshsales_Configurations",
-    "group": "Freshsales_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesConfiguration/index.js",
-    "groupTitle": "Freshsales_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/freshsales/configurations",
-    "title": "Gets a list of Freshsales Configurations",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/configurations -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetFreshsales_Configurations",
-    "group": "Freshsales_Configurations",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/freshsales/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/freshsales/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/freshsales/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/freshsales/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/freshsales/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesConfiguration/index.js",
-    "groupTitle": "Freshsales_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/freshsales/configurations/{id}",
-    "title": "Gets a single Freshsales Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/configurations/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowFreshsales_Configurations",
-    "group": "Freshsales_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesConfiguration/index.js",
-    "groupTitle": "Freshsales_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/freshsales/configurations/{id}/descriptions",
-    "title": "Gets configurations descriptions",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/configurations/{id}/descriptions -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getDescriptions",
-    "group": "Freshsales_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesConfiguration/index.js",
-    "groupTitle": "Freshsales_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/freshsales/configurations/{id}/fields",
-    "title": "Gets configurations fields",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/configurations/{id}/fields -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getFields",
-    "group": "Freshsales_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesConfiguration/index.js",
-    "groupTitle": "Freshsales_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/freshsales/configurations/{id}/subjects",
-    "title": "Gets configurations subjects",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/configurations/{id}/subjects -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getSubjects",
-    "group": "Freshsales_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesConfiguration/index.js",
-    "groupTitle": "Freshsales_Configurations"
-  },
-  {
-    "type": "put",
-    "url": "/api/integrations/freshsales/configurations/{id}",
-    "title": "Update an existing Freshsales Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateFreshsales_Configurations",
-    "group": "Freshsales_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesConfiguration/index.js",
-    "groupTitle": "Freshsales_Configurations"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/freshsales/fields",
-    "title": "Creates a new Freshsales Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateFreshsales_Fields",
-    "group": "Freshsales_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesField/index.js",
-    "groupTitle": "Freshsales_Fields"
-  },
-  {
-    "type": "delete",
-    "url": "/api/integrations/freshsales/fields/{id}",
-    "title": "Deletes a Freshsales Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/fields/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteFreshsales_Fields",
-    "group": "Freshsales_Fields",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesField/index.js",
-    "groupTitle": "Freshsales_Fields"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/freshsales/fields",
-    "title": "Gets a list of Freshsales Fields",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/fields -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetFreshsales_Fields",
-    "group": "Freshsales_Fields",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/freshsales/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/freshsales/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/freshsales/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/freshsales/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/freshsales/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesField/index.js",
-    "groupTitle": "Freshsales_Fields"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/freshsales/fields/{id}",
-    "title": "Gets a single Freshsales Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/fields/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowFreshsales_Fields",
-    "group": "Freshsales_Fields",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesField/index.js",
-    "groupTitle": "Freshsales_Fields"
-  },
-  {
-    "type": "put",
-    "url": "/api/integrations/freshsales/fields/{id}",
-    "title": "Update an existing Freshsales Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/freshsales/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateFreshsales_Fields",
-    "group": "Freshsales_Fields",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intFreshsalesField/index.js",
-    "groupTitle": "Freshsales_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/campaign/index.js",
-    "groupTitle": "IVR_Campaigns"
-  },
-  {
-    "type": "post",
-    "url": "/api/campaigns/clone",
-    "title": "Clone an existing IVR Campaign",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/campaigns/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CloneIVR_Campaigns",
-    "group": "IVR_Campaigns",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Active/Disactive Campaign</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "limitCalls",
-            "description": "<p>Max 200 calls.</p>"
-          },
-          {
-            "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": "<p>Originate Timeout Seconds (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialCongestionMaxRetry",
-            "description": "<p>#Congestion Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialCongestionRetryFrequency",
-            "description": "<p>Congestion Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialBusyMaxRetry",
-            "description": "<p>#Busy Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialBusyRetryFrequency",
-            "description": "<p>Busy Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialNoAnswerMaxRetry",
-            "description": "<p>#NoAnswer Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialNoAnswerRetryFrequency",
-            "description": "<p>NoAnswer Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialGlobalMaxRetry",
-            "description": "<p>#Global Max Retry (min:1, max:999)</p>"
-          },
-          {
-            "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": "<p>Active/Disactive AMD</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDInitialSilence",
-            "description": "<p>#AMD Initial Silence</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDGreeting",
-            "description": "<p>#AMD Greeting</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDAfterGreetingSilence",
-            "description": "<p>#AMD After Greeting Silence</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDTotalAnalysisTime",
-            "description": "<p>#AMD Total Analysis Time</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDMinWordLength",
-            "description": "<p>#AMD Min Word Length</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDBetweenWordsSilence",
-            "description": "<p>#AMD Between Words Silence</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDMaximumNumberOfWords",
-            "description": "<p>#AMD Maximum Number Of Words</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDSilenceThreshold",
-            "description": "<p>#AMD Silence Threshold (min:0, max:32767)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDMaximumWordLength",
-            "description": "<p>#AMD Maximum Word Length</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"DESC\"",
-              "\"ASC\""
-            ],
-            "optional": true,
-            "field": "dialOrderByScheduledAt",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "dialPrefix",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialRandomLastDigitCallerIdNumber",
-            "description": "<p>Random Last Digit (min:1, max:15)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialCutDigit",
-            "description": "<p>Cut Digit (min:1, max:15)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialNoSuchNumberMaxRetry",
-            "description": "<p>#NoSuchNumber Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialNoSuchNumberRetryFrequency",
-            "description": "<p>NoSuchNumber Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialDropMaxRetry",
-            "description": "<p>#Drop Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialDropRetryFrequency",
-            "description": "<p>Drop Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAbandonedMaxRetry",
-            "description": "<p>#Abandoned Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAbandonedRetryFrequency",
-            "description": "<p>Abandoned Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialMachineMaxRetry",
-            "description": "<p>#Machine Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialMachineRetryFrequency",
-            "description": "<p>Machine Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAgentRejectMaxRetry",
-            "description": "<p>#AgentReject Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAgentRejectRetryFrequency",
-            "description": "<p>AgentReject Retry Frequency Minutes (min:1, max:99999)</p>"
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/campaigns?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/campaigns?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/campaigns?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/campaigns?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/campaigns?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/intervals?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/intervals?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/intervals?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/intervals?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/intervals?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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 -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addIntervals",
-    "group": "Intervals",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/jscripty/answers/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/jscripty/answers/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/jscripty/answers/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/jscripty/answers/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/jscripty/answers/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/jscripty/questions/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/jscripty/questions/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/jscripty/questions/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/jscripty/questions/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/jscripty/questions/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/jscripty/sessions/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/jscripty/sessions/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/jscripty/sessions/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/jscripty/sessions/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/jscripty/sessions/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "sendUnpauseOnSubmit",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/jscripty/projects?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/jscripty/projects?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/jscripty/projects?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/jscripty/projects?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/jscripty/projects?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/license/index.js",
-    "groupTitle": "License"
-  },
-  {
-    "type": "put",
-    "url": "/api/license/{id}",
-    "title": "Update License Info",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/license/{id} -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "update",
-    "group": "License",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/license/index.js",
-    "groupTitle": "License"
-  },
-  {
-    "type": "post",
-    "url": "/api/mail/accounts/{id}/users",
-    "title": "Add agents to a mail account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/mail/accounts/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddAgents",
-    "group": "Mail_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailAccount/index.js",
-    "groupTitle": "Mail_Accounts"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailAccount/index.js",
-    "groupTitle": "Mail_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/mail/accounts/{id}",
-    "title": "Deletes a mail account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/mail/accounts/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteMailAccounts",
-    "group": "Mail_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailAccount/index.js",
-    "groupTitle": "Mail_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/mail/accounts/{id}/users",
-    "title": "Gets agents from mail account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/mail/accounts/{id}/users -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetAgents",
-    "group": "Mail_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailAccount/index.js",
-    "groupTitle": "Mail_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/mail/accounts/{id}/users",
-    "title": "Removes agents from a mail account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/mail/accounts/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveAgents",
-    "group": "Mail_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailAccount/index.js",
-    "groupTitle": "Mail_Accounts"
-  },
-  {
-    "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": "Mail_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailAccount/index.js",
-    "groupTitle": "Mail_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/mail/accounts/{id}/dispositions",
-    "title": "Removes dispositions from account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/mail/accounts/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveDispositions",
-    "group": "Mail_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailAccount/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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Virtual",
-            "optional": true,
-            "field": "name",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "optional": true,
-            "field": "appdata",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interval",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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\"}' -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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "lastMsgBody",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "lastMsgText",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailAccount/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\" <[email-masked]>'}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "sendMail",
-    "group": "Mail_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailApplication/index.js",
-    "groupTitle": "Mail_Applications"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "lastMsgBody",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "lastMsgText",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/interactions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/interactions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/interactions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/interactions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/interactions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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\": \"[email-masked]\", \"...\": \"...\"}]' \\ \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": "Text",
-            "optional": true,
-            "field": "plainBody",
-            "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "originTo",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "originCc",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailInteraction/index.js",
-    "groupTitle": "Mail_Interactions"
-  },
-  {
-    "type": "get",
-    "url": "/api/mail/interactions/{id}/download",
-    "title": "Gets interaction",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/mail/interactions/{id}/download -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "download",
-    "group": "Mail_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailMessage/index.js",
-    "groupTitle": "Mail_Messages"
-  },
-  {
-    "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_Messages",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailMessage/index.js",
-    "groupTitle": "Mail_Messages"
-  },
-  {
-    "type": "get",
-    "url": "/api/mail/messages/{id}/download",
-    "title": "Gets message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/mail/messages/{id}/download -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "download",
-    "group": "Mail_Messages",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailMessage/index.js",
-    "groupTitle": "Mail_Messages"
-  },
-  {
-    "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_Messages",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/reports/queue?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/reports/queue?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/reports/queue?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/reports/queue?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/reports/queue?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/out_servers?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/out_servers?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/out_servers?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/out_servers?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/out_servers?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/substatuses?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/substatuses?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/substatuses?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/substatuses?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/substatuses?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailSubstatus/index.js",
-    "groupTitle": "Mail_Substatuses"
-  },
-  {
-    "type": "post",
-    "url": "/api/mail/reports/transfer",
-    "title": "Creates a new Mail Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/mail/reports/transfer -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateMail_Transfer_Reports",
-    "group": "Mail_Transfer_Reports",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "uniqueid",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"account\"",
-              "\"agent\"",
-              "\"queue\""
-            ],
-            "optional": false,
-            "field": "type",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "transferredAt",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailTransferReport/index.js",
-    "groupTitle": "Mail_Transfer_Reports"
-  },
-  {
-    "type": "delete",
-    "url": "/api/mail/reports/transfer/{id}",
-    "title": "Deletes a Mail Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/mail/reports/transfer/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteMail_Transfer_Reports",
-    "group": "Mail_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailTransferReport/index.js",
-    "groupTitle": "Mail_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/mail/reports/transfer/describe",
-    "title": "Gets table info about Mail Transfer Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/mail/reports/transfer/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeMail_Transfer_Reports",
-    "group": "Mail_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailTransferReport/index.js",
-    "groupTitle": "Mail_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/mail/reports/transfer",
-    "title": "Gets a list of Mail Transfer Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/mail/reports/transfer -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetMail_Transfer_Reports",
-    "group": "Mail_Transfer_Reports",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/reports/transfer?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/reports/transfer?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/reports/transfer?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/reports/transfer?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/reports/transfer?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailTransferReport/index.js",
-    "groupTitle": "Mail_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/mail/reports/transfer/{id}",
-    "title": "Gets a single Mail Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/mail/reports/transfer/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowMail_Transfer_Reports",
-    "group": "Mail_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailTransferReport/index.js",
-    "groupTitle": "Mail_Transfer_Reports"
-  },
-  {
-    "type": "put",
-    "url": "/api/mail/reports/transfer/{id}",
-    "title": "Update an existing Mail Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/mail/reports/transfer/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateMail_Transfer_Reports",
-    "group": "Mail_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/mailTransferReport/index.js",
-    "groupTitle": "Mail_Transfer_Reports"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/members/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/members/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/members/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/members/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/members/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/migrations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/migrations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/migrations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/migrations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/migrations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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 -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "Create",
-    "group": "Networks",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/networks?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/networks?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/networks?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/networks?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/networks?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/network/index.js",
-    "groupTitle": "Networks"
-  },
-  {
-    "type": "post",
-    "url": "/api/notifications",
-    "title": "Send notification to user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/notifications -d '{\"text\": \"Hello!\", \"TemplateId\": 1}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "Send",
-    "group": "Notifications",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/notification/index.js",
-    "groupTitle": "Notifications"
-  },
-  {
-    "type": "post",
-    "url": "/api/openchannel/accounts/{id}/users",
-    "title": "Add agents to a openchannel account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/openchannel/accounts/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddAgents",
-    "group": "Openchannel_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelAccount/index.js",
-    "groupTitle": "Openchannel_Accounts"
-  },
-  {
-    "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": "token",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "replyUri",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "key",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "notificationTemplate",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "notificationSound",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "notificationShake",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "waitForTheAssignedAgent",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "mapKey",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "queueTransfer",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "queueTransferTimeout",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "agentTransfer",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "agentTransferTimeout",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "mandatoryDispositionPauseId",
-            "description": "<p>Status to put when mandatory disposition is enabled</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "mandatoryDisposition",
-            "description": "<p>Enabled/disables mandatory dispo on a queue</p>"
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelAccount/index.js",
-    "groupTitle": "Openchannel_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/openchannel/accounts/{id}/users",
-    "title": "Gets agents from openchannel account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/openchannel/accounts/{id}/users -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetAgents",
-    "group": "Openchannel_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelAccount/index.js",
-    "groupTitle": "Openchannel_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/openchannel/accounts/{id}/users",
-    "title": "Removes agents from a openchannel account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/openchannel/accounts/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveAgents",
-    "group": "Openchannel_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelAccount/index.js",
-    "groupTitle": "Openchannel_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/openchannel/accounts/{id}/dispositions",
-    "title": "Removes dispositions from account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/openchannel/accounts/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveDispositions",
-    "group": "Openchannel_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Virtual",
-            "optional": true,
-            "field": "name",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "optional": true,
-            "field": "appdata",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interval",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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\": \"vip\"}' -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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <p>Follow this link to check the documentation: <pre><a target=\"_blank\" href=\"https://wiki.xcallymotion.com/display/XMV/New+Channels+Configuration+Steps#NewChannelsConfigurationSteps-BuildyourownChannelservice\">https://wiki.xcallymotion.com/display/XMV/New+Channels+Configuration+Steps#NewChannelsConfigurationSteps-BuildyourownChannelservice</a></pre></p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelAccount/index.js",
-    "groupTitle": "Openchannel_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/openchannel/accounts/{id}/send",
-    "title": "Send new openchannel message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/openchannel/accounts/{id}/send -d '{from: 'John Doe', body: 'This is a test'}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "sendOpenchannel",
-    "group": "Openchannel_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "optional": true,
-            "field": "appdata",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interval",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/applications?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/applications?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/applications?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/applications?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/applications?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelApplication/index.js",
-    "groupTitle": "Openchannel_Applications"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "from",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/interactions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/interactions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/interactions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/interactions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/interactions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelInteraction/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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelInteraction/index.js",
-    "groupTitle": "Openchannel_Interactions"
-  },
-  {
-    "type": "get",
-    "url": "/api/openchannel/interactions/{id}/download",
-    "title": "Gets interaction",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/openchannel/interactions/{id}/download -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "download",
-    "group": "Openchannel_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/reports/queue?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/reports/queue?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/reports/queue?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/reports/queue?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/reports/queue?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelQueue/index.js",
-    "groupTitle": "Openchannel_Queues"
-  },
-  {
-    "type": "post",
-    "url": "/api/openchannel/reports/transfer",
-    "title": "Creates a new Openchannel Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/openchannel/reports/transfer -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateOpenchannel_Transfer_Reports",
-    "group": "Openchannel_Transfer_Reports",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "uniqueid",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"account\"",
-              "\"agent\"",
-              "\"queue\""
-            ],
-            "optional": false,
-            "field": "type",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "transferredAt",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelTransferReport/index.js",
-    "groupTitle": "Openchannel_Transfer_Reports"
-  },
-  {
-    "type": "delete",
-    "url": "/api/openchannel/reports/transfer/{id}",
-    "title": "Deletes a Openchannel Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/openchannel/reports/transfer/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteOpenchannel_Transfer_Reports",
-    "group": "Openchannel_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelTransferReport/index.js",
-    "groupTitle": "Openchannel_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/openchannel/reports/transfer/describe",
-    "title": "Gets table info about Openchannel Transfer Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/openchannel/reports/transfer/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeOpenchannel_Transfer_Reports",
-    "group": "Openchannel_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelTransferReport/index.js",
-    "groupTitle": "Openchannel_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/openchannel/reports/transfer",
-    "title": "Gets a list of Openchannel Transfer Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/openchannel/reports/transfer -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetOpenchannel_Transfer_Reports",
-    "group": "Openchannel_Transfer_Reports",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/reports/transfer?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/reports/transfer?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/reports/transfer?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/reports/transfer?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/reports/transfer?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelTransferReport/index.js",
-    "groupTitle": "Openchannel_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/openchannel/reports/transfer/{id}",
-    "title": "Gets a single Openchannel Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/openchannel/reports/transfer/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowOpenchannel_Transfer_Reports",
-    "group": "Openchannel_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelTransferReport/index.js",
-    "groupTitle": "Openchannel_Transfer_Reports"
-  },
-  {
-    "type": "put",
-    "url": "/api/openchannel/reports/transfer/{id}",
-    "title": "Update an existing Openchannel Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/openchannel/reports/transfer/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateOpenchannel_Transfer_Reports",
-    "group": "Openchannel_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelTransferReport/index.js",
-    "groupTitle": "Openchannel_Transfer_Reports"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/pauses?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/pauses?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/pauses?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/pauses?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/pauses?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/pause/index.js",
-    "groupTitle": "Pauses"
-  },
-  {
-    "type": "get",
-    "url": "/api/plugins",
-    "title": "Gets a list of Plugins",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/plugins -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetPlugins",
-    "group": "Plugins",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/plugins?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/plugins?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/plugins?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/plugins?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/plugins?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/plugin/index.js",
-    "groupTitle": "Plugins"
-  },
-  {
-    "type": "get",
-    "url": "/api/plugins/{id}",
-    "title": "Gets a single Plugin",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/plugins/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowPlugins",
-    "group": "Plugins",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/plugin/index.js",
-    "groupTitle": "Plugins"
-  },
-  {
-    "type": "delete",
-    "url": "/api/plugins/{id}",
-    "title": "Delete a plugin",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/plugins/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "destroyPlugin",
-    "group": "Plugins",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/plugin/index.js",
-    "groupTitle": "Plugins"
-  },
-  {
-    "type": "get",
-    "url": "/api/plugins/{id}/download",
-    "title": "Download plugin source code",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/plugins/{id}/download -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "download",
-    "group": "Plugins",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/plugin/index.js",
-    "groupTitle": "Plugins"
-  },
-  {
-    "type": "put",
-    "url": "/api/plugins/{id}",
-    "title": "Update an existing plugin",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/plugins/{id} -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updatePlugin",
-    "group": "Plugins",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/plugin/index.js",
-    "groupTitle": "Plugins"
-  },
-  {
-    "type": "post",
-    "url": "/api/plugins",
-    "title": "Upload new plugin",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/plugins -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "uploadPlugin",
-    "group": "Plugins",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/plugin/index.js",
-    "groupTitle": "Plugins"
-  },
-  {
-    "type": "get",
-    "url": "/api/plugins/webhook?hostname={host}&port={port}&encoding={encoding}&json={json}&path={path}",
-    "title": "Redirect a plugin request to the specified path",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/plugins/webhook?port={port}&path={path} -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "webhookPlugin",
-    "group": "Plugins",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/plugin/index.js",
-    "groupTitle": "Plugins"
-  },
-  {
-    "type": "post",
-    "url": "/api/plugins/webhook?hostname={host}&port={port}&encoding={encoding}&json={json}&path={path}",
-    "title": "Redirect a plugin request to the specified path",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/plugins/webhook?port={port}&path={path} -H 'Content-Type: application/json' -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "webhookPlugin",
-    "group": "Plugins",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/plugin/index.js",
-    "groupTitle": "Plugins"
-  },
-  {
-    "type": "delete",
-    "url": "/api/pm2/{id}",
-    "title": "Deletes an existing process",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/pm2/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeletePm2Process",
-    "group": "Pm2",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/pm2/index.js",
-    "groupTitle": "Pm2"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion returns the pm2 processes list.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/pm2/index.js",
-    "groupTitle": "Pm2"
-  },
-  {
-    "type": "post",
-    "url": "/api/pm2",
-    "title": "Start a single pm2 process",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/pm2 -d '{\"name\": \"process_name\", \"script\": \"/index.js\"}'\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "StartPm2Process",
-    "group": "Pm2",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "name",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "script",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "UpdatePm2Process",
-    "group": "Pm2",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime campaigns parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime fax account parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return the current agent capacity.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime agents parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime chat queues parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime fax queues parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime mail account parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime mail queues parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime openchannel queues parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime outbound channels.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime sms queues parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of telephones parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime trunks parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime voice channel mixmonitor.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime voice channel stopmixmonitor.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime voice channels.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a specific realtime voice queue channel.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will hangup a specific realtime voice queue channel.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will redirect a specific realtime voice queue channel to a specific extension.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a specific preview contact.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime outbound parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime voice queues parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime voice queues channels.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/rpc/index.js",
-    "groupTitle": "RPC_Realtime"
-  },
-  {
-    "type": "get",
-    "url": "/api/rpc/chat/queues/{id}",
-    "title": "Gets a single RTChatQueue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/rpc/chat/queues/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowRTChatQueues",
-    "group": "RPC_Realtime",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/rpc/index.js",
-    "groupTitle": "RPC_Realtime"
-  },
-  {
-    "type": "get",
-    "url": "/api/rpc/fax/queues/{id}",
-    "title": "Gets a single RTFaxQueue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/rpc/fax/queues/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowRTFaxQueues",
-    "group": "RPC_Realtime",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/rpc/index.js",
-    "groupTitle": "RPC_Realtime"
-  },
-  {
-    "type": "get",
-    "url": "/api/rpc/mail/queues/{id}",
-    "title": "Gets a single RTMailQueue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/rpc/mail/queues/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowRTMailQueues",
-    "group": "RPC_Realtime",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/rpc/index.js",
-    "groupTitle": "RPC_Realtime"
-  },
-  {
-    "type": "get",
-    "url": "/api/rpc/openchannel/queues/{id}",
-    "title": "Gets a single RTOpenchannelQueue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/rpc/openchannel/queues/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowRTOpenchannelQueues",
-    "group": "RPC_Realtime",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/rpc/index.js",
-    "groupTitle": "RPC_Realtime"
-  },
-  {
-    "type": "get",
-    "url": "/api/rpc/sms/queues/{id}",
-    "title": "Gets a single RTSmsQueue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/rpc/sms/queues/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowRTSmsQueues",
-    "group": "RPC_Realtime",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/rpc/index.js",
-    "groupTitle": "RPC_Realtime"
-  },
-  {
-    "type": "get",
-    "url": "/api/rpc/voice/queues/{id}",
-    "title": "Gets a single RTVoiceQueue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/rpc/voice/queues/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowRTVoiceQueues",
-    "group": "RPC_Realtime",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/rpc/index.js",
-    "groupTitle": "RPC_Realtime"
-  },
-  {
-    "type": "post",
-    "url": "/api/rpc/agents/:id/notify",
-    "title": "Notify message to a specific agent",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/rpc/agents/:id/notify -d '{\"messageId\": \"5080\", \"channel\": \"mail\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "agentNotify",
-    "group": "RPC_Realtime",
-    "description": "<p>Notify message to a specific agent.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/rpc/index.js",
-    "groupTitle": "RPC_Realtime"
-  },
-  {
-    "type": "post",
-    "url": "/api/rpc/chat/queues/:id/notify",
-    "title": "Notify message to a specific queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/rpc/chat/queues/:id/notify -d '{\"messageId\": \"5080\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "chatQueueNotify",
-    "group": "RPC_Realtime",
-    "description": "<p>Notify message to a specific queue.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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/chat/queues/waitinginteractions -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "chatQueuesWaitingInteractions",
-    "group": "RPC_Realtime",
-    "description": "<p>Motion will return a list of realtime waiting chat queues interctions.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/rpc/index.js",
-    "groupTitle": "RPC_Realtime"
-  },
-  {
-    "type": "post",
-    "url": "/api/rpc/fax/queues/:id/notify",
-    "title": "Notify message to a specific queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/rpc/fax/queues/:id/notify -d '{\"messageId\": \"5080\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "faxQueueNotify",
-    "group": "RPC_Realtime",
-    "description": "<p>Notify message to a specific queue.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime waiting fax queues interctions.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/rpc/index.js",
-    "groupTitle": "RPC_Realtime"
-  },
-  {
-    "type": "post",
-    "url": "/api/rpc/mail/queues/:id/notify",
-    "title": "Notify message to a specific queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/rpc/mail/queues/:id/notify -d '{\"messageId\": \"5080\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "mailQueueNotify",
-    "group": "RPC_Realtime",
-    "description": "<p>Notify message to a specific queue.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime waiting mail queues interctions.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/rpc/index.js",
-    "groupTitle": "RPC_Realtime"
-  },
-  {
-    "type": "post",
-    "url": "/api/rpc/openchannel/queues/:id/notify",
-    "title": "Notify message to a specific queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/rpc/openchannel/queues/:id/notify -d '{\"messageId\": \"5080\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "openchannelQueueNotify",
-    "group": "RPC_Realtime",
-    "description": "<p>Notify message to a specific queue.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime waiting openchannel queues interctions.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/rpc/index.js",
-    "groupTitle": "RPC_Realtime"
-  },
-  {
-    "type": "post",
-    "url": "/api/rpc/sms/queues/:id/notify",
-    "title": "Notify message to a specific queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/rpc/sms/queues/:id/notify -d '{\"messageId\": \"5080\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "smsQueueNotify",
-    "group": "RPC_Realtime",
-    "description": "<p>Notify message to a specific queue.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a list of realtime waiting sms queues interctions.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/salesforce/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/salesforce/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/salesforce/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/salesforce/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/salesforce/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": [
-              "\"Task\"",
-              "\"Case\""
-            ],
-            "optional": true,
-            "field": "ticketType",
-            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/salesforce/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/salesforce/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/salesforce/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/salesforce/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/salesforce/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/salesforce/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/salesforce/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/salesforce/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/salesforce/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/salesforce/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "cc",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "bcc",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "sendIfEmpty",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/schedules?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/schedules?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/schedules?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/schedules?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/schedules?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/schedule/index.js",
-    "groupTitle": "Schedules"
-  },
-  {
-    "type": "get",
-    "url": "/api/schedules/{id}/run",
-    "title": "Run Scheduler",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/schedules/{id}/run -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "run",
-    "group": "Schedules",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/schedule/index.js",
-    "groupTitle": "Schedules"
-  },
-  {
-    "type": "post",
-    "url": "/api/screen/recordings",
-    "title": "Creates a new Recording",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/screen/recordings -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateRecordings",
-    "group": "Screen_Recordings",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "Virtual",
-            "optional": true,
-            "field": "format",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interactionid",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "channel",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "value",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "rating",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "duration",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "startedAt",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "closedAt",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "createdAt",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "updatedAt",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/screenRecording/index.js",
-    "groupTitle": "Screen_Recordings"
-  },
-  {
-    "type": "get",
-    "url": "/api/screen/recordings/describe",
-    "title": "Gets table info about Recordings",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/screen/recordings/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeRecordings",
-    "group": "Screen_Recordings",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/screenRecording/index.js",
-    "groupTitle": "Screen_Recordings"
-  },
-  {
-    "type": "get",
-    "url": "/api/screen/recordings",
-    "title": "Gets a list of Recordings",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/screen/recordings -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetRecordings",
-    "group": "Screen_Recordings",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/screen/recordings?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/screen/recordings?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/screen/recordings?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/screen/recordings?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/screen/recordings?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/screenRecording/index.js",
-    "groupTitle": "Screen_Recordings"
-  },
-  {
-    "type": "get",
-    "url": "/api/screen/recordings/{id}",
-    "title": "Gets a single Recording",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/screen/recordings/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowRecordings",
-    "group": "Screen_Recordings",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/screenRecording/index.js",
-    "groupTitle": "Screen_Recordings"
-  },
-  {
-    "type": "delete",
-    "url": "/api/screen/recordings/{id}",
-    "title": "Delete screen recording",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/screen/recordings/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "destroy",
-    "group": "Screen_Recordings",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/screenRecording/index.js",
-    "groupTitle": "Screen_Recordings"
-  },
-  {
-    "type": "get",
-    "url": "/api/screen/recordings/{id}/download",
-    "title": "Download Recording",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/screen/recordings/{id}/download -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "download",
-    "group": "Screen_Recordings",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/screenRecording/index.js",
-    "groupTitle": "Screen_Recordings"
-  },
-  {
-    "type": "put",
-    "url": "/api/screen/recordings/{id}",
-    "title": "Update an existing Recording",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/screen/recordings/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateRecordings",
-    "group": "Screen_Recordings",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/screenRecording/index.js",
-    "groupTitle": "Screen_Recordings"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/servicenow/accounts",
-    "title": "Creates a new Servicenow Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateServicenow_Accounts",
-    "group": "Servicenow_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": "email",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "remoteUri",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "serverUrl",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowAccount/index.js",
-    "groupTitle": "Servicenow_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/integrations/servicenow/accounts/{id}",
-    "title": "Deletes a Servicenow Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/accounts/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteServicenow_Accounts",
-    "group": "Servicenow_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowAccount/index.js",
-    "groupTitle": "Servicenow_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/servicenow/accounts",
-    "title": "Gets a list of Servicenow Accounts",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/accounts -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetServicenow_Accounts",
-    "group": "Servicenow_Accounts",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/servicenow/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/servicenow/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/servicenow/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/servicenow/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/servicenow/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowAccount/index.js",
-    "groupTitle": "Servicenow_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/servicenow/accounts/{id}",
-    "title": "Gets a single Servicenow Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/accounts/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowServicenow_Accounts",
-    "group": "Servicenow_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowAccount/index.js",
-    "groupTitle": "Servicenow_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/servicenow/accounts/{id}/configurations",
-    "title": "Creates new configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addConfiguration",
-    "group": "Servicenow_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowAccount/index.js",
-    "groupTitle": "Servicenow_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/servicenow/accounts/{id}/configurations",
-    "title": "Gets account configurations",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/accounts/{id}/configurations -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getConfigurations",
-    "group": "Servicenow_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowAccount/index.js",
-    "groupTitle": "Servicenow_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/servicenow/accounts/{id}/fields",
-    "title": "Gets account fields",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/accounts/{id}/fields -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getFields",
-    "group": "Servicenow_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowAccount/index.js",
-    "groupTitle": "Servicenow_Accounts"
-  },
-  {
-    "type": "put",
-    "url": "/api/integrations/servicenow/accounts/{id}",
-    "title": "Update an existing Servicenow Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateServicenow_Accounts",
-    "group": "Servicenow_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowAccount/index.js",
-    "groupTitle": "Servicenow_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/servicenow/configurations",
-    "title": "Creates a new Servicenow Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateServicenow_Configurations",
-    "group": "Servicenow_Configurations",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "name",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowConfiguration/index.js",
-    "groupTitle": "Servicenow_Configurations"
-  },
-  {
-    "type": "delete",
-    "url": "/api/integrations/servicenow/configurations/{id}",
-    "title": "Deletes a Servicenow Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/configurations/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteServicenow_Configurations",
-    "group": "Servicenow_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowConfiguration/index.js",
-    "groupTitle": "Servicenow_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/servicenow/configurations",
-    "title": "Gets a list of Servicenow Configurations",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/configurations -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetServicenow_Configurations",
-    "group": "Servicenow_Configurations",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/servicenow/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/servicenow/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/servicenow/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/servicenow/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/servicenow/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowConfiguration/index.js",
-    "groupTitle": "Servicenow_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/servicenow/configurations/{id}",
-    "title": "Gets a single Servicenow Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/configurations/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowServicenow_Configurations",
-    "group": "Servicenow_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowConfiguration/index.js",
-    "groupTitle": "Servicenow_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/servicenow/configurations/{id}/descriptions",
-    "title": "Gets configurations descriptions",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/configurations/{id}/descriptions -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getDescriptions",
-    "group": "Servicenow_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowConfiguration/index.js",
-    "groupTitle": "Servicenow_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/servicenow/configurations/{id}/fields",
-    "title": "Gets configurations fields",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/configurations/{id}/fields -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getFields",
-    "group": "Servicenow_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowConfiguration/index.js",
-    "groupTitle": "Servicenow_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/servicenow/configurations/{id}/subjects",
-    "title": "Gets configurations subjects",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/configurations/{id}/subjects -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getSubjects",
-    "group": "Servicenow_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowConfiguration/index.js",
-    "groupTitle": "Servicenow_Configurations"
-  },
-  {
-    "type": "put",
-    "url": "/api/integrations/servicenow/configurations/{id}",
-    "title": "Update an existing Servicenow Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateServicenow_Configurations",
-    "group": "Servicenow_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowConfiguration/index.js",
-    "groupTitle": "Servicenow_Configurations"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/servicenow/fields",
-    "title": "Creates a new Servicenow Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateServicenow_Fields",
-    "group": "Servicenow_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowField/index.js",
-    "groupTitle": "Servicenow_Fields"
-  },
-  {
-    "type": "delete",
-    "url": "/api/integrations/servicenow/fields/{id}",
-    "title": "Deletes a Servicenow Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/fields/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteServicenow_Fields",
-    "group": "Servicenow_Fields",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowField/index.js",
-    "groupTitle": "Servicenow_Fields"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/servicenow/fields",
-    "title": "Gets a list of Servicenow Fields",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/fields -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetServicenow_Fields",
-    "group": "Servicenow_Fields",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/servicenow/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/servicenow/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/servicenow/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/servicenow/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/servicenow/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowField/index.js",
-    "groupTitle": "Servicenow_Fields"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/servicenow/fields/{id}",
-    "title": "Gets a single Servicenow Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/fields/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowServicenow_Fields",
-    "group": "Servicenow_Fields",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowField/index.js",
-    "groupTitle": "Servicenow_Fields"
-  },
-  {
-    "type": "put",
-    "url": "/api/integrations/servicenow/fields/{id}",
-    "title": "Update an existing Servicenow Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/servicenow/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateServicenow_Fields",
-    "group": "Servicenow_Fields",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intServicenowField/index.js",
-    "groupTitle": "Servicenow_Fields"
-  },
-  {
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/settings?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/settings?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/settings?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/settings?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/settings?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/setting/index.js",
-    "groupTitle": "Settings"
-  },
-  {
-    "type": "post",
-    "url": "/api/settings/{id}/favicon",
-    "title": "Add Favicon",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/settings/{id}/favicon -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addFavicon",
-    "group": "Settings",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/setting/index.js",
-    "groupTitle": "Settings"
-  },
-  {
-    "type": "post",
-    "url": "/api/settings/{id}/preferred",
-    "title": "Add Preferred",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/settings/{id}/preferred -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addPreferred",
-    "group": "Settings",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/setting/index.js",
-    "groupTitle": "Settings"
-  },
-  {
-    "type": "get",
-    "url": "/api/settings/{id}/favicon",
-    "title": "Get Favicon",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/settings/{id}/favicon -v -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getFavicon",
-    "group": "Settings",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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 -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getLogo",
-    "group": "Settings",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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 -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getLogoLogin",
-    "group": "Settings",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/setting/index.js",
-    "groupTitle": "Settings"
-  },
-  {
-    "type": "get",
-    "url": "/api/settings/{id}/preferred",
-    "title": "Get Preferred",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/settings/{id}/preferred -v -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getPreferred",
-    "group": "Settings",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/setting/index.js",
-    "groupTitle": "Settings"
-  },
-  {
-    "type": "put",
-    "url": "/api/settings/{id}",
-    "title": "Update an existing Setting",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/settings/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateSettings",
-    "group": "Settings",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/setting/index.js",
-    "groupTitle": "Settings"
-  },
-  {
-    "type": "post",
-    "url": "/api/sms/accounts/{id}/users",
-    "title": "Add agents to a sms account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/sms/accounts/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddAgents",
-    "group": "Sms_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsAccount/index.js",
-    "groupTitle": "Sms_Accounts"
-  },
-  {
-    "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\"",
-              "\"clickatell\"",
-              "\"csc\"",
-              "\"infobip\"",
-              "\"intelepeer\""
-            ],
-            "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": [
-              "\"SI\"",
-              "\"TI\"",
-              "\"GP\""
-            ],
-            "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": "apiKey",
-            "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "notificationTemplate",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "notificationSound",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "notificationShake",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "waitForTheAssignedAgent",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "queueTransfer",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "queueTransferTimeout",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "agentTransfer",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "agentTransferTimeout",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "baseUrl",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "mandatoryDispositionPauseId",
-            "description": "<p>Status to put when mandatory disposition is enabled</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "mandatoryDisposition",
-            "description": "<p>Enabled/disables mandatory dispo on a queue</p>"
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsAccount/index.js",
-    "groupTitle": "Sms_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/sms/accounts/{id}/users",
-    "title": "Gets agents from sms account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/sms/accounts/{id}/users -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetAgents",
-    "group": "Sms_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsAccount/index.js",
-    "groupTitle": "Sms_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/sms/accounts/{id}/users",
-    "title": "Removes agents from a sms account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/sms/accounts/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveAgents",
-    "group": "Sms_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsAccount/index.js",
-    "groupTitle": "Sms_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/sms/accounts/{id}/dispositions",
-    "title": "Removes dispositions from account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/sms/accounts/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveDispositions",
-    "group": "Sms_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Virtual",
-            "optional": true,
-            "field": "name",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "optional": true,
-            "field": "appdata",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interval",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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\": \"vip\"}' -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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <p>This API is used to create a new sms message to be sent to the system.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsMessage/index.js",
-    "groupTitle": "Sms_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/sms/accounts/{id}/status",
-    "title": "Receive message status as get request",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/sms/accounts/{id}/status -H 'Content-Type: application/json' -v -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "statusMessage",
-    "group": "Sms_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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 -H 'Content-Type: application/json' -v -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "statusMessage",
-    "group": "Sms_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "optional": true,
-            "field": "appdata",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interval",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/applications?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/applications?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/applications?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/applications?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/applications?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsApplication/index.js",
-    "groupTitle": "Sms_Applications"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/interactions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/interactions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/interactions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/interactions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/interactions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsInteraction/index.js",
-    "groupTitle": "Sms_Interactions"
-  },
-  {
-    "type": "get",
-    "url": "/api/sms/interactions/{id}/download",
-    "title": "Gets interaction",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/sms/interactions/{id}/download -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "download",
-    "group": "Sms_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/reports/queue?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/reports/queue?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/reports/queue?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/reports/queue?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/reports/queue?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsQueue/index.js",
-    "groupTitle": "Sms_Queues"
-  },
-  {
-    "type": "post",
-    "url": "/api/sms/reports/transfer",
-    "title": "Creates a new Sms Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/sms/reports/transfer -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateSms_Transfer_Reports",
-    "group": "Sms_Transfer_Reports",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "uniqueid",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"account\"",
-              "\"agent\"",
-              "\"queue\""
-            ],
-            "optional": false,
-            "field": "type",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "transferredAt",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsTransferReport/index.js",
-    "groupTitle": "Sms_Transfer_Reports"
-  },
-  {
-    "type": "delete",
-    "url": "/api/sms/reports/transfer/{id}",
-    "title": "Deletes a Sms Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/sms/reports/transfer/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteSms_Transfer_Reports",
-    "group": "Sms_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsTransferReport/index.js",
-    "groupTitle": "Sms_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/sms/reports/transfer/describe",
-    "title": "Gets table info about Sms Transfer Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/sms/reports/transfer/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeSms_Transfer_Reports",
-    "group": "Sms_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsTransferReport/index.js",
-    "groupTitle": "Sms_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/sms/reports/transfer",
-    "title": "Gets a list of Sms Transfer Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/sms/reports/transfer -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetSms_Transfer_Reports",
-    "group": "Sms_Transfer_Reports",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/reports/transfer?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/reports/transfer?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/reports/transfer?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/reports/transfer?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/reports/transfer?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsTransferReport/index.js",
-    "groupTitle": "Sms_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/sms/reports/transfer/{id}",
-    "title": "Gets a single Sms Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/sms/reports/transfer/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowSms_Transfer_Reports",
-    "group": "Sms_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsTransferReport/index.js",
-    "groupTitle": "Sms_Transfer_Reports"
-  },
-  {
-    "type": "put",
-    "url": "/api/sms/reports/transfer/{id}",
-    "title": "Update an existing Sms Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/sms/reports/transfer/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateSms_Transfer_Reports",
-    "group": "Sms_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsTransferReport/index.js",
-    "groupTitle": "Sms_Transfer_Reports"
-  },
-  {
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sounds?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sounds?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sounds?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sounds?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sounds?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/square/details/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/square/details/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/square/details/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/square/details/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/square/details/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/squareReportDetail/index.js",
-    "groupTitle": "Square_Details_Reports"
-  },
-  {
-    "type": "post",
-    "url": "/api/square/messages",
-    "title": "Creates a new Message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/square/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateMessages",
-    "group": "Square_Messages",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "uniqueid",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": false,
-            "field": "body",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"in\"",
-              "\"out\""
-            ],
-            "optional": false,
-            "field": "direction",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/squareMessage/index.js",
-    "groupTitle": "Square_Messages"
-  },
-  {
-    "type": "delete",
-    "url": "/api/square/messages/{id}",
-    "title": "Deletes a Message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/square/messages/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteMessages",
-    "group": "Square_Messages",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/squareMessage/index.js",
-    "groupTitle": "Square_Messages"
-  },
-  {
-    "type": "get",
-    "url": "/api/square/messages",
-    "title": "Gets a list of Messages",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/square/messages -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetMessages",
-    "group": "Square_Messages",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/square/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/square/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/square/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/square/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/square/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/squareMessage/index.js",
-    "groupTitle": "Square_Messages"
-  },
-  {
-    "type": "get",
-    "url": "/api/square/messages/{id}",
-    "title": "Gets a single Message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/square/messages/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowMessages",
-    "group": "Square_Messages",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/squareMessage/index.js",
-    "groupTitle": "Square_Messages"
-  },
-  {
-    "type": "put",
-    "url": "/api/square/messages/{id}",
-    "title": "Update an existing Message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/square/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateMessages",
-    "group": "Square_Messages",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/squareMessage/index.js",
-    "groupTitle": "Square_Messages"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/square/odbc?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/square/odbc?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/square/odbc?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/square/odbc?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/square/odbc?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/square/projects?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/square/projects?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/square/projects?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/square/projects?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/square/projects?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/squareProject/index.js",
-    "groupTitle": "Square_Projects"
-  },
-  {
-    "type": "post",
-    "url": "/api/square/projects/{id}/users",
-    "title": "Adds user permissions to a Project",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/square/projects/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addUsers",
-    "group": "Square_Projects",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/squareProject/index.js",
-    "groupTitle": "Square_Projects"
-  },
-  {
-    "type": "get",
-    "url": "/api/square/projects/{id}/users",
-    "title": "Gets users permissions from Project",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/square/projects/{id}/users -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getUsers",
-    "group": "Square_Projects",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/squareProject/index.js",
-    "groupTitle": "Square_Projects"
-  },
-  {
-    "type": "delete",
-    "url": "/api/square/projects/{id}/users",
-    "title": "Removes user permissions from a Project",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/square/projects/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "removeUsers",
-    "group": "Square_Projects",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Virtual",
-            "optional": true,
-            "field": "format",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/square/recordings?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/square/recordings?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/square/recordings?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/square/recordings?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/square/recordings?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/squareRecording/index.js",
-    "groupTitle": "Square_Recordings"
-  },
-  {
-    "type": "delete",
-    "url": "/api/square/recordings/{id}/delete",
-    "title": "Delete recording",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/square/recordings/{id}/delete -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "destroy",
-    "group": "Square_Recordings",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "bot",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/square/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/square/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/square/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/square/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/square/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/sugarcrm/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/sugarcrm/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/sugarcrm/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/sugarcrm/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/sugarcrm/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/sugarcrm/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/sugarcrm/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/sugarcrm/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/sugarcrm/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/sugarcrm/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/sugarcrm/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/sugarcrm/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/sugarcrm/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/sugarcrm/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/sugarcrm/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intSugarcrmField/index.js",
-    "groupTitle": "Sugarcrm_Fields"
-  },
-  {
-    "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": "<p>Motion returns the system information.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/system/index.js",
-    "groupTitle": "System_Information"
-  },
-  {
-    "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": "<p>Motion returns the system information.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/tags?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/tags?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/tags?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/tags?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/tags?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/teams?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/teams?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/teams?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/teams?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/teams?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/team/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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/openchannelQueue/index.js",
-    "groupTitle": "Teams"
-  },
-  {
-    "type": "delete",
-    "url": "/api/whatsapp/queues/{id}/teams",
-    "title": "Remove teams from a queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/queues/{id}/teams -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveTeams",
-    "group": "Teams",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueue/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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/smsQueue/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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voiceQueue/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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/chatQueue/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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/faxQueue/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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/templates?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/templates?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/templates?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/templates?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/templates?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/triggers?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/triggers?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/triggers?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/triggers?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/triggers?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Allowed values: contactManager, integration, motionbar, jscripty, urlForward, browser, bot, script</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "data1",
-            "description": "<p>contactManager[ListId], integration[intName(zendesk)], motionbar[Popup(0),URL(1),WinApp(2)], urlForward[GET,POST], browser[TemplateId(0),URL(1)]</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "data2",
-            "description": "<p>integration[AccountId], motionbar[TemplateId,URL,WinAppPath], urlForward[URL]</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "data3",
-            "description": "<p>motionbar[NULL,NULL,WinAppArguments]</p>"
-          },
-          {
-            "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "data7",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/trigger/index.js",
-    "groupTitle": "Triggers"
-  },
-  {
-    "type": "post",
-    "url": "/api/trunks/clone",
-    "title": "Clone an existing Trunk",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/trunks/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CloneTrunks",
-    "group": "Trunks",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/trunk/index.js",
-    "groupTitle": "Trunks"
-  },
-  {
-    "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": "<p>String is deprecated. Please use an Array as [&quot;udp&quot;, &quot;tcp&quot;]</p>"
-          },
-          {
-            "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": "<p>String is deprecated. Please use an Array as [&quot;force_rport&quot;, &quot;comedia&quot;]</p>"
-          },
-          {
-            "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": "<p>String is deprecated. Please use an Array as [&quot;ulaw&quot;, &quot;alaw&quot;, &quot;alaw&quot;]</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"yes\"",
-              "\"no\""
-            ],
-            "optional": true,
-            "field": "autoframing",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "insecure",
-            "description": "<p>String is deprecated. Please use an Array as [&quot;port&quot;, &quot;invite&quot;]</p>"
-          },
-          {
-            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/trunks?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/trunks?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/trunks?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/trunks?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/trunks?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/trunk/index.js",
-    "groupTitle": "Trunks"
-  },
-  {
-    "type": "post",
-    "url": "/api/userProfile/resources",
-    "title": "Creates a new User Profile Resource",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfile/resources -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateUser_Profile_Resources",
-    "group": "User_Profile_Resources",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "name",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": false,
-            "field": "resourceId",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "type",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfileResource/index.js",
-    "groupTitle": "User_Profile_Resources"
-  },
-  {
-    "type": "delete",
-    "url": "/api/userProfile/resources/{id}",
-    "title": "Deletes a User Profile Resource",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfile/resources/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteUser_Profile_Resources",
-    "group": "User_Profile_Resources",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfileResource/index.js",
-    "groupTitle": "User_Profile_Resources"
-  },
-  {
-    "type": "get",
-    "url": "/api/userProfile/resources/describe",
-    "title": "Gets table info about User Profile Resources",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfile/resources/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeUser_Profile_Resources",
-    "group": "User_Profile_Resources",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfileResource/index.js",
-    "groupTitle": "User_Profile_Resources"
-  },
-  {
-    "type": "get",
-    "url": "/api/userProfile/resources",
-    "title": "Gets a list of User Profile Resources",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfile/resources -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetUser_Profile_Resources",
-    "group": "User_Profile_Resources",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/userProfile/resources?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/userProfile/resources?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/userProfile/resources?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/userProfile/resources?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/userProfile/resources?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfileResource/index.js",
-    "groupTitle": "User_Profile_Resources"
-  },
-  {
-    "type": "get",
-    "url": "/api/userProfile/resources/{id}",
-    "title": "Gets a single User Profile Resource",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfile/resources/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowUser_Profile_Resources",
-    "group": "User_Profile_Resources",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfileResource/index.js",
-    "groupTitle": "User_Profile_Resources"
-  },
-  {
-    "type": "put",
-    "url": "/api/userProfile/resources/{id}",
-    "title": "Update an existing User Profile Resource",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfile/resources/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateUser_Profile_Resources",
-    "group": "User_Profile_Resources",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfileResource/index.js",
-    "groupTitle": "User_Profile_Resources"
-  },
-  {
-    "type": "post",
-    "url": "/api/userProfile/sections",
-    "title": "Creates a new User Profile Section",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfile/sections -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateUser_Profile_Sections",
-    "group": "User_Profile_Sections",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "name",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "category",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": false,
-            "field": "sectionId",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "enabled",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "autoAssociation",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "crudPermissions",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfileSection/index.js",
-    "groupTitle": "User_Profile_Sections"
-  },
-  {
-    "type": "delete",
-    "url": "/api/userProfile/sections/{id}",
-    "title": "Deletes a User Profile Section",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfile/sections/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteUser_Profile_Sections",
-    "group": "User_Profile_Sections",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfileSection/index.js",
-    "groupTitle": "User_Profile_Sections"
-  },
-  {
-    "type": "get",
-    "url": "/api/userProfile/sections/describe",
-    "title": "Gets table info about User Profile Sections",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfile/sections/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeUser_Profile_Sections",
-    "group": "User_Profile_Sections",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfileSection/index.js",
-    "groupTitle": "User_Profile_Sections"
-  },
-  {
-    "type": "get",
-    "url": "/api/userProfile/sections",
-    "title": "Gets a list of User Profile Sections",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfile/sections -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetUser_Profile_Sections",
-    "group": "User_Profile_Sections",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/userProfile/sections?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/userProfile/sections?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/userProfile/sections?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/userProfile/sections?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/userProfile/sections?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfileSection/index.js",
-    "groupTitle": "User_Profile_Sections"
-  },
-  {
-    "type": "get",
-    "url": "/api/userProfile/sections/{id}",
-    "title": "Gets a single User Profile Section",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfile/sections/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowUser_Profile_Sections",
-    "group": "User_Profile_Sections",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfileSection/index.js",
-    "groupTitle": "User_Profile_Sections"
-  },
-  {
-    "type": "put",
-    "url": "/api/userProfile/sections/{id}",
-    "title": "Update an existing User Profile Section",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfile/sections/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateUser_Profile_Sections",
-    "group": "User_Profile_Sections",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfileSection/index.js",
-    "groupTitle": "User_Profile_Sections"
-  },
-  {
-    "type": "post",
-    "url": "/api/userProfiles/{id}/resources",
-    "title": "Add resources' permissions to User Profile",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfiles/{id}/resources -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddResources",
-    "group": "User_Profiles",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfile/index.js",
-    "groupTitle": "User_Profiles"
-  },
-  {
-    "type": "post",
-    "url": "/api/userProfiles/{id}/sections",
-    "title": "Add sections' permissions to User Profile",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfiles/{id}/sections -d '[{\"sectionId\": \"name\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddSections",
-    "group": "User_Profiles",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfile/index.js",
-    "groupTitle": "User_Profiles"
-  },
-  {
-    "type": "post",
-    "url": "/api/userProfiles/clone",
-    "title": "Clone an existing User Profile",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfiles/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CloneUser_Profiles",
-    "group": "User_Profiles",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfile/index.js",
-    "groupTitle": "User_Profiles"
-  },
-  {
-    "type": "post",
-    "url": "/api/userProfiles",
-    "title": "Creates a new User Profile",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfiles -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateUser_Profiles",
-    "group": "User_Profiles",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "name",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "crudPermissions",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfile/index.js",
-    "groupTitle": "User_Profiles"
-  },
-  {
-    "type": "delete",
-    "url": "/api/userProfiles/{id}",
-    "title": "Deletes a User Profile",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfiles/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteUser_Profiles",
-    "group": "User_Profiles",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfile/index.js",
-    "groupTitle": "User_Profiles"
-  },
-  {
-    "type": "get",
-    "url": "/api/userProfiles/describe",
-    "title": "Gets table info about User Profiles",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfiles/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeUser_Profiles",
-    "group": "User_Profiles",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfile/index.js",
-    "groupTitle": "User_Profiles"
-  },
-  {
-    "type": "get",
-    "url": "/api/userProfiles/{id}/resources?section={section}",
-    "title": "Get Resources assigned to a Section",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfiles/{id}/resources?section={section} -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetResources",
-    "group": "User_Profiles",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfile/index.js",
-    "groupTitle": "User_Profiles"
-  },
-  {
-    "type": "get",
-    "url": "/api/userProfiles/{id}/sections",
-    "title": "Get sections associated to a User Profile",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfiles/{id}/sections -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetSections",
-    "group": "User_Profiles",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfile/index.js",
-    "groupTitle": "User_Profiles"
-  },
-  {
-    "type": "get",
-    "url": "/api/userProfiles",
-    "title": "Gets a list of User Profiles",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfiles -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetUser_Profiles",
-    "group": "User_Profiles",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/userProfiles?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/userProfiles?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/userProfiles?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/userProfiles?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/userProfiles?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfile/index.js",
-    "groupTitle": "User_Profiles"
-  },
-  {
-    "type": "delete",
-    "url": "/api/userProfiles/{id}/resources",
-    "title": "Removes resources' permissions from User Profile",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfiles/{id}/resources?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveResources",
-    "group": "User_Profiles",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfile/index.js",
-    "groupTitle": "User_Profiles"
-  },
-  {
-    "type": "delete",
-    "url": "/api/userProfiles/{id}/sections",
-    "title": "Removes sections' permissions from User Profile",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfiles/{id}/sections?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveSections",
-    "group": "User_Profiles",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfile/index.js",
-    "groupTitle": "User_Profiles"
-  },
-  {
-    "type": "get",
-    "url": "/api/userProfiles/{id}",
-    "title": "Gets a single User Profile",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfiles/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowUser_Profiles",
-    "group": "User_Profiles",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfile/index.js",
-    "groupTitle": "User_Profiles"
-  },
-  {
-    "type": "put",
-    "url": "/api/userProfiles/{id}",
-    "title": "Update an existing User Profile",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/userProfiles/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateUser_Profiles",
-    "group": "User_Profiles",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/userProfile/index.js",
-    "groupTitle": "User_Profiles"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/chat_interactions",
-    "title": "Add chat interaction tabs to an agent",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/chat_interactions -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddChatInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/chat_websites",
-    "title": "Add a Chat Website to a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/chat_websites -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddChatWebsites",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/fax_accounts",
-    "title": "Add a Fax Account to a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/fax_accounts -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddFaxAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/fax_interactions",
-    "title": "Add fax interaction tabs to an agent",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/fax_interactions -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddFaxInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/mail_accounts",
-    "title": "Add a Mail Account to a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/mail_accounts -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddMailAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/mail_interactions",
-    "title": "Add mail interaction tabs to an agent",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/mail_interactions -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddMailInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/openchannel_accounts",
-    "title": "Add a Open Channel Account to a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/openchannel_accounts -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddOpenchannelAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/openchannel_interactions",
-    "title": "Add openchannel interaction tabs to an agent",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/openchannel_interactions -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddOpenchannelInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/sms_accounts",
-    "title": "Add a Sms Account to a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/sms_accounts -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddSmsAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/sms_interactions",
-    "title": "Add sms interaction tabs to an agent",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/sms_interactions -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddSmsInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/square_projects",
-    "title": "Add a Square Project to a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/square_projects -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddSquareProjects",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/whatsapp_accounts",
-    "title": "Add a Whatsapp Account to a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/whatsapp_accounts -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddWhatsappAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/whatsapp_interactions",
-    "title": "Add Whatsapp interaction tabs to an agent",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/whatsapp_interactions -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddWhatsappInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>The name of the user</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "fullname",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "alias",
-            "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": "whatsappPause",
-            "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": "whatsappCapacity",
-            "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": "<p>String is deprecated. Please use an Array as [&quot;udp&quot;, &quot;tcp&quot;]</p>"
-          },
-          {
-            "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": "<p>String is deprecated. Please use an Array as [&quot;force_rport&quot;, &quot;comedia&quot;]</p>"
-          },
-          {
-            "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": "<p>String is deprecated. Please use an Array as [&quot;ulaw&quot;, &quot;alaw&quot;, &quot;gsm&quot;]</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"yes\"",
-              "\"no\""
-            ],
-            "optional": true,
-            "field": "autoframing",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "insecure",
-            "description": "<p>String is deprecated. Please use an Array as [&quot;port&quot;, &quot;invite&quot;]</p>"
-          },
-          {
-            "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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "phoneBarEnableJaws",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "phoneBarEnableScreenRecordingByAgent",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Virtual",
-            "optional": true,
-            "field": "phoneBarEnableVideoRecording",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "phoneBarEnableAutomaticScreenRecording",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "phoneBarPrefixRequired",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "hotdesk",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interface",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "privacyEnabled",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "apiKeyNonce",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "apiKeyIat",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "screenrecording",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "blocked",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "blockedAt",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "loginAttempts",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "disabled",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "post",
-    "url": "/api/users/{id}/api_key",
-    "title": "Create a new API access key for the user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/:id/api_key -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateApiKey",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetAgents",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "get",
-    "url": "/api/users/{id}/api_key",
-    "title": "Get the API access key for the user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/:id/api_key -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetApiKey",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetChatGroups",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetChatInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "get",
-    "url": "/api/users/{id}/chat_websites",
-    "title": "GetChatWebsites",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/chat_websites -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetChatWebsites",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetContacts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "get",
-    "url": "/api/users/{id}/fax_accounts",
-    "title": "GetFaxAccounts",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/fax_accounts -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetFaxAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetFaxInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetLists",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "get",
-    "url": "/api/users/{id}/mail_accounts",
-    "title": "GetMailAccounts",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/mail_accounts -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetMailAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetMailInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "get",
-    "url": "/api/users/{id}/openchannel_accounts",
-    "title": "GetOpenchannelAccounts",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/openchannel_accounts -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetOpenchannelAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "get",
-    "url": "/api/users/{id}/prefixes",
-    "title": "GetPrefixes",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/prefixes -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetPrefixes",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetQueues",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetRecordings",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "get",
-    "url": "/api/users/{id}/scheduled_calls",
-    "title": "GetScheduledCalls",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/scheduled_calls -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetScheduledCalls",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "get",
-    "url": "/api/users/{id}/screen_recordings",
-    "title": "GetScreenRecordings",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/screen_recordings -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetScreenRecordings",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "get",
-    "url": "/api/users/{id}/sms_accounts",
-    "title": "GetSmsAccounts",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/sms_accounts -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetSmsAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetSmsInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "get",
-    "url": "/api/users/{id}/square_projects",
-    "title": "GetSquareProjects",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/square_projects -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetSquareProjects",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetTeams",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/users?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/users?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/users?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/users?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/users?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetVoiceQueuesRt",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "get",
-    "url": "/api/users/{id}/whatsapp_accounts",
-    "title": "GetWhatsappAccounts",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/whatsapp_accounts -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetWhatsappAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "get",
-    "url": "/api/users/{id}/whatsapp/interactions",
-    "title": "GetWhatsappInteractions",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/whatsapp/interactions -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetWhatsappInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "Login",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "Logout",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "Pause",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/api_key",
-    "title": "Remove API access key for the user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/:id/api_key -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveApiKey",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/chat_interactions",
-    "title": "Removes interactions from an agent",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/chat_interactions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveChatInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/chat_websites",
-    "title": "Removes a Chat Website from a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/chat_websites?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveChatWebsites",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/fax_accounts",
-    "title": "Removes a Fax Account from a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/fax_accounts?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveFaxAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/fax_interactions",
-    "title": "Removes interactions from an agent",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/fax_interactions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveFaxInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/mail_accounts",
-    "title": "Removes a Mail Account from a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/mail_accounts?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveMailAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/mail_interactions",
-    "title": "Removes interactions from an agent",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/mail_interactions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveMailInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/openchannel_accounts",
-    "title": "Removes a Open Channel Account from a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/openchannel_accounts?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveOpenchannelAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/openchannel_interactions",
-    "title": "Removes openchannel interactions from an agent",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/openchannel_interactions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveOpenchannelInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/sms_accounts",
-    "title": "Removes a Sms Account from a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/sms_accounts?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveSmsAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/sms_interactions",
-    "title": "Removes interactions from an agent",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/sms_interactions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveSmsInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/square_projects",
-    "title": "Removes a Square Project from a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/square_projects?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveSquareProjects",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/whatsapp_accounts",
-    "title": "Removes a Whatsapp Account from a user",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/whatsapp_accounts?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveWhatsappAccounts",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "delete",
-    "url": "/api/users/{id}/whatsapp_interactions",
-    "title": "Removes Whatsapp interactions from an agent",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/{id}/whatsapp_interactions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveWhatsappInteractions",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "Unpause",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/user/index.js",
-    "groupTitle": "Users"
-  },
-  {
-    "type": "get",
-    "url": "/api/users/whoami",
-    "title": "WhoAmI",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/users/whoami -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "WhoAmI",
-    "group": "Users",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/variables?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/variables?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/variables?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/variables?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/variables?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion run the following command: git fetch origin master</p>",
-    "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": "<p>Motion returns the current and latest motion version.</p>",
-    "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": "<p>Motion launch the database migrations, according to the application version</p>",
-    "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": "<p>Motion run the following command: git pull</p>",
-    "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": "<p>Motion run the following command: git reset --hard FETCH_HEAD</p>",
-    "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": "<p>Motion run the following command: pm2 restart motion</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/agents/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/agents/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/agents/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/agents/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/agents/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/calls/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/calls/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/calls/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/calls/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/calls/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/chanspy?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/chanspy?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/chanspy?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/chanspy?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/chanspy?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/contexts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/contexts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/contexts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/contexts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/contexts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/dials/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/dials/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/dials/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/dials/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/dials/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voiceDialReport/index.js",
-    "groupTitle": "Voice_Dial_Reports"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/extensions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/extensions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/extensions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/extensions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/extensions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/mohs?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/mohs?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/mohs?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/mohs?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/mohs?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Integer",
-            "optional": false,
-            "field": "maxsecs",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": false,
-            "field": "maxmsg",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Virtual",
-            "optional": true,
-            "field": "name",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/mails?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/mails?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/mails?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/mails?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/mails?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/mails/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/mails/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/mails/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/mails/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/mails/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voiceMailMessage/index.js",
-    "groupTitle": "Voice_Messages"
-  },
-  {
-    "type": "post",
-    "url": "/api/voice/prefixes/{id}/users",
-    "title": "Add agents to a prefix",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/prefixes/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddAgents",
-    "group": "Voice_Prefixes",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voicePrefix/index.js",
-    "groupTitle": "Voice_Prefixes"
-  },
-  {
-    "type": "delete",
-    "url": "/api/voice/prefixes/{id}",
-    "title": "Deletes a Prefix",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/prefixes/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeletePrefixes",
-    "group": "Voice_Prefixes",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voicePrefix/index.js",
-    "groupTitle": "Voice_Prefixes"
-  },
-  {
-    "type": "get",
-    "url": "/api/voice/prefixes/describe",
-    "title": "Gets table info about Prefixes",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/prefixes/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribePrefixes",
-    "group": "Voice_Prefixes",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voicePrefix/index.js",
-    "groupTitle": "Voice_Prefixes"
-  },
-  {
-    "type": "get",
-    "url": "/api/voice/prefixes/{id}/users",
-    "title": "Gets agents from prefix",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/prefixes/{id}/users -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetAgents",
-    "group": "Voice_Prefixes",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voicePrefix/index.js",
-    "groupTitle": "Voice_Prefixes"
-  },
-  {
-    "type": "get",
-    "url": "/api/voice/prefixes",
-    "title": "Gets a list of Prefixes",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/prefixes -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetPrefixes",
-    "group": "Voice_Prefixes",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/prefixes?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/prefixes?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/prefixes?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/prefixes?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/prefixes?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/voicePrefix/index.js",
-    "groupTitle": "Voice_Prefixes"
-  },
-  {
-    "type": "delete",
-    "url": "/api/voice/prefixes/{id}/users",
-    "title": "Removes agents from a prefix",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/prefixes/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveAgents",
-    "group": "Voice_Prefixes",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voicePrefix/index.js",
-    "groupTitle": "Voice_Prefixes"
-  },
-  {
-    "type": "get",
-    "url": "/api/voice/prefixes/{id}",
-    "title": "Gets a single Prefix",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/prefixes/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowPrefixes",
-    "group": "Voice_Prefixes",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voicePrefix/index.js",
-    "groupTitle": "Voice_Prefixes"
-  },
-  {
-    "type": "put",
-    "url": "/api/voice/prefixes/{id}",
-    "title": "Update an existing prefix",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/prefixes/{id} -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "Update",
-    "group": "Voice_Prefixes",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voicePrefix/index.js",
-    "groupTitle": "Voice_Prefixes"
-  },
-  {
-    "type": "post",
-    "url": "/api/voice/prefixes",
-    "title": "Create a prefix",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/prefixes -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "create",
-    "group": "Voice_Prefixes",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voicePrefix/index.js",
-    "groupTitle": "Voice_Prefixes"
-  },
-  {
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/queues/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/queues/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/queues/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/queues/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/queues/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voiceQueueReport/index.js",
-    "groupTitle": "Voice_Queue_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/voice/queues/reports/index",
-    "title": "Get Voice Queues Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/queues/reports/index -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getVoiceQueuesReport",
-    "group": "Voice_Queue_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voiceQueue/index.js",
-    "groupTitle": "Voice_Queues"
-  },
-  {
-    "type": "post",
-    "url": "/api/voice/queues/clone",
-    "title": "Clone an existing Queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/queues/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CloneQueues",
-    "group": "Voice_Queues",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": [
-              "\"rr\"",
-              "\"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": "Text",
-            "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": "<p>Active/Disactive Campaign</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"preview\"",
-              "\"progressive\"",
-              "\"power\"",
-              "\"predictive\"",
-              "\"booked\""
-            ],
-            "optional": true,
-            "field": "dialMethod",
-            "description": "<p>Dial Method.</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialLimitChannel",
-            "description": "<p>Max 9999 channels, 0 means unlimited.</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialLimitQueue",
-            "description": "<p>Max 9999 member in queue(min:1, max:9999), 0 means unlimited.</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Float",
-            "optional": true,
-            "field": "dialPowerLevel",
-            "description": "<p>Power Level: Calls for agents (min:1, max:10).</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"agentBusyFactor\"",
-              "\"dropRate\""
-            ],
-            "optional": true,
-            "field": "dialPredictiveOptimization",
-            "description": "<p>Only for predictive method.</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Float",
-            "optional": true,
-            "field": "dialPredictiveOptimizationPercentage",
-            "description": "<p>Predictive Optimization Percentage (min: 1, max: 95)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialPredictiveInterval",
-            "description": "<p>Interval Predictive Minutes (min:5 max:30)</p>"
-          },
-          {
-            "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": "<p>Originate Timeout Seconds (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "dialQueueOptions",
-            "description": "<p>https://wiki.asterisk.org/wiki/display/AST/Asterisk+13+Application_Queue</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialQueueTimeout",
-            "description": "<p>Queue Timeout Seconds (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "dialQueueProject",
-            "description": "<p>AGI queue option (use: agi://127.0.0.1/square,&lt;project_name&gt;)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialCongestionMaxRetry",
-            "description": "<p>#Congestion Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialCongestionRetryFrequency",
-            "description": "<p>Congestion Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialBusyMaxRetry",
-            "description": "<p>#Busy Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialBusyRetryFrequency",
-            "description": "<p>Busy Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialNoAnswerMaxRetry",
-            "description": "<p>#NoAnswer Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialNoAnswerRetryFrequency",
-            "description": "<p>NoAnswer Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialGlobalMaxRetry",
-            "description": "<p>#Global Max Retry (min:1, max:999)</p>"
-          },
-          {
-            "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": "<p>Active/Disactive AMD</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDInitialSilence",
-            "description": "<p>#AMD Initial Silence</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDGreeting",
-            "description": "<p>#AMD Greeting</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDAfterGreetingSilence",
-            "description": "<p>#AMD After Greeting Silence</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDTotalAnalysisTime",
-            "description": "<p>#AMD Total Analysis Time</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDMinWordLength",
-            "description": "<p>#AMD Min Word Length</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDBetweenWordsSilence",
-            "description": "<p>#AMD Between Words Silence</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDMaximumNumberOfWords",
-            "description": "<p>#AMD Maximum Number Of Words</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDSilenceThreshold",
-            "description": "<p>#AMD Silence Threshold (min:0, max:32767)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAMDMaximumWordLength",
-            "description": "<p>#AMD Maximum Word Length</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialRecallMeTimeout",
-            "description": "<p>#RecallMe Timeout (min:1)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "dialRecallInQueue",
-            "description": "<p>Active/Disactive Recall In Queue</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"DESC\"",
-              "\"ASC\""
-            ],
-            "optional": true,
-            "field": "dialOrderByScheduledAt",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "dialQueueProject2",
-            "description": "<p>AGI queue option (use: agi://127.0.0.1/square,&lt;project_name&gt;)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "dialAgiAfterHangupClient",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "dialAgiAfterHangupAgent",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialRandomLastDigitCallerIdNumber",
-            "description": "<p>Random Last Digit (min:1, max:15)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialCutDigit",
-            "description": "<p>Cut Digit (min:1, max:15)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialNoSuchNumberMaxRetry",
-            "description": "<p>#NoSuchNumber Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialNoSuchNumberRetryFrequency",
-            "description": "<p>NoSuchNumber Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialDropMaxRetry",
-            "description": "<p>#Drop Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialDropRetryFrequency",
-            "description": "<p>Drop Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAbandonedMaxRetry",
-            "description": "<p>#Abandoned Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAbandonedRetryFrequency",
-            "description": "<p>Abandoned Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialMachineMaxRetry",
-            "description": "<p>#Machine Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialMachineRetryFrequency",
-            "description": "<p>Machine Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAgentRejectMaxRetry",
-            "description": "<p>#AgentReject Retry (min:1, max:999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialAgentRejectRetryFrequency",
-            "description": "<p>AgentReject Retry Frequency Minutes (min:1, max:99999)</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "mandatoryDispositionPauseId",
-            "description": "<p>Status to put when mandatory disposition is enabled</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "mandatoryDisposition",
-            "description": "<p>Enabled/disables mandatory dispo on a queue</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialPredictiveIntervalMaxThreshold",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "dialPredictiveIntervalMinThreshold",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "Text",
-            "optional": true,
-            "field": "location",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "transcribeName",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "transcribeStatus",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "fileUri",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "fileText",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Text",
-            "optional": true,
-            "field": "failureReason",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "sentiment",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Float",
-            "optional": true,
-            "field": "sPositive",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Float",
-            "optional": true,
-            "field": "sNegative",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Float",
-            "optional": true,
-            "field": "sNeutral",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Float",
-            "optional": true,
-            "field": "sMixed",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "tempSentiment",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "createdAt",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "updatedAt",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/recordings?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/recordings?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/recordings?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/recordings?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/recordings?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voiceRecording/index.js",
-    "groupTitle": "Voice_Recordings"
-  },
-  {
-    "type": "delete",
-    "url": "/api/voice/recordings/{id}",
-    "title": "Delete voice recording",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/recordings/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "destroy",
-    "group": "Voice_Recordings",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voiceRecording/index.js",
-    "groupTitle": "Voice_Recordings"
-  },
-  {
-    "type": "get",
-    "url": "/api/voice/recordings/{id}/downloads",
-    "title": "Download Recording",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/recordings/{id}/downloads -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "downloads",
-    "group": "Voice_Recordings",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voiceRecording/index.js",
-    "groupTitle": "Voice_Recordings"
-  },
-  {
-    "type": "get",
-    "url": "/api/voice/recordings/{id}/transcribe",
-    "title": "Run Transcribe Recording",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/recordings/{id}/transcribe -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "transcribe",
-    "group": "Voice_Recordings",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voiceRecording/index.js",
-    "groupTitle": "Voice_Recordings"
-  },
-  {
-    "type": "post",
-    "url": "/api/voice/recordings/{id}/transcribe",
-    "title": "Run Transcribe Recording",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/voice/recordings/{id}/transcribe -d '{\"runSentiment\": \"true\"}' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "transcribe",
-    "group": "Voice_Recordings",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/transfers/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/transfers/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/transfers/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/transfers/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/transfers/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/voiceTransferReport/index.js",
-    "groupTitle": "Voice_Transfer_Reports"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/vtiger/accounts",
-    "title": "Creates a new Vtiger Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateVtiger_Accounts",
-    "group": "Vtiger_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": false,
-            "field": "username",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "moduleName",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "remoteUri",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "serverUrl",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "accessKey",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerAccount/index.js",
-    "groupTitle": "Vtiger_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/integrations/vtiger/accounts/{id}",
-    "title": "Deletes a Vtiger Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/accounts/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteVtiger_Accounts",
-    "group": "Vtiger_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerAccount/index.js",
-    "groupTitle": "Vtiger_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/vtiger/accounts",
-    "title": "Gets a list of Vtiger Accounts",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/accounts -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetVtiger_Accounts",
-    "group": "Vtiger_Accounts",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/vtiger/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/vtiger/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/vtiger/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/vtiger/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/vtiger/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerAccount/index.js",
-    "groupTitle": "Vtiger_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/vtiger/accounts/{id}",
-    "title": "Gets a single Vtiger Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/accounts/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowVtiger_Accounts",
-    "group": "Vtiger_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerAccount/index.js",
-    "groupTitle": "Vtiger_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/vtiger/accounts/{id}/configurations",
-    "title": "Creates new configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addConfiguration",
-    "group": "Vtiger_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerAccount/index.js",
-    "groupTitle": "Vtiger_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/vtiger/accounts/{id}/configurations",
-    "title": "Gets account configurations",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/accounts/{id}/configurations -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getConfigurations",
-    "group": "Vtiger_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerAccount/index.js",
-    "groupTitle": "Vtiger_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/vtiger/accounts/{id}/fields",
-    "title": "Gets account fields",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/accounts/{id}/fields -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getFields",
-    "group": "Vtiger_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerAccount/index.js",
-    "groupTitle": "Vtiger_Accounts"
-  },
-  {
-    "type": "put",
-    "url": "/api/integrations/vtiger/accounts/{id}",
-    "title": "Update an existing Vtiger Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateVtiger_Accounts",
-    "group": "Vtiger_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerAccount/index.js",
-    "groupTitle": "Vtiger_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/vtiger/configurations",
-    "title": "Creates a new Vtiger Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateVtiger_Configurations",
-    "group": "Vtiger_Configurations",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "name",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerConfiguration/index.js",
-    "groupTitle": "Vtiger_Configurations"
-  },
-  {
-    "type": "delete",
-    "url": "/api/integrations/vtiger/configurations/{id}",
-    "title": "Deletes a Vtiger Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/configurations/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteVtiger_Configurations",
-    "group": "Vtiger_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerConfiguration/index.js",
-    "groupTitle": "Vtiger_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/vtiger/configurations",
-    "title": "Gets a list of Vtiger Configurations",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/configurations -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetVtiger_Configurations",
-    "group": "Vtiger_Configurations",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/vtiger/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/vtiger/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/vtiger/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/vtiger/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/vtiger/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerConfiguration/index.js",
-    "groupTitle": "Vtiger_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/vtiger/configurations/{id}",
-    "title": "Gets a single Vtiger Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/configurations/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowVtiger_Configurations",
-    "group": "Vtiger_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerConfiguration/index.js",
-    "groupTitle": "Vtiger_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/vtiger/configurations/{id}/descriptions",
-    "title": "Gets configurations descriptions",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/configurations/{id}/descriptions -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getDescriptions",
-    "group": "Vtiger_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerConfiguration/index.js",
-    "groupTitle": "Vtiger_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/vtiger/configurations/{id}/fields",
-    "title": "Gets configurations fields",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/configurations/{id}/fields -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getFields",
-    "group": "Vtiger_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerConfiguration/index.js",
-    "groupTitle": "Vtiger_Configurations"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/vtiger/configurations/{id}/subjects",
-    "title": "Gets configurations subjects",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/configurations/{id}/subjects -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getSubjects",
-    "group": "Vtiger_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerConfiguration/index.js",
-    "groupTitle": "Vtiger_Configurations"
-  },
-  {
-    "type": "put",
-    "url": "/api/integrations/vtiger/configurations/{id}",
-    "title": "Update an existing Vtiger Configuration",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateVtiger_Configurations",
-    "group": "Vtiger_Configurations",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerConfiguration/index.js",
-    "groupTitle": "Vtiger_Configurations"
-  },
-  {
-    "type": "post",
-    "url": "/api/integrations/vtiger/fields",
-    "title": "Creates a new Vtiger Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateVtiger_Fields",
-    "group": "Vtiger_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerField/index.js",
-    "groupTitle": "Vtiger_Fields"
-  },
-  {
-    "type": "delete",
-    "url": "/api/integrations/vtiger/fields/{id}",
-    "title": "Deletes a Vtiger Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/fields/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteVtiger_Fields",
-    "group": "Vtiger_Fields",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerField/index.js",
-    "groupTitle": "Vtiger_Fields"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/vtiger/fields",
-    "title": "Gets a list of Vtiger Fields",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/fields -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetVtiger_Fields",
-    "group": "Vtiger_Fields",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/vtiger/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/vtiger/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/vtiger/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/vtiger/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/vtiger/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerField/index.js",
-    "groupTitle": "Vtiger_Fields"
-  },
-  {
-    "type": "get",
-    "url": "/api/integrations/vtiger/fields/{id}",
-    "title": "Gets a single Vtiger Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/fields/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowVtiger_Fields",
-    "group": "Vtiger_Fields",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerField/index.js",
-    "groupTitle": "Vtiger_Fields"
-  },
-  {
-    "type": "put",
-    "url": "/api/integrations/vtiger/fields/{id}",
-    "title": "Update an existing Vtiger Field",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/integrations/vtiger/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateVtiger_Fields",
-    "group": "Vtiger_Fields",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/intVtigerField/index.js",
-    "groupTitle": "Vtiger_Fields"
-  },
-  {
-    "type": "post",
-    "url": "/api/webbar/answer",
-    "title": "answer webrtc call",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/webbar/answer -d '{\"sessionId\": \"<sessionId>\", \"userId\": 54}' \\\n -H \"Content-Type: application/json\" -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "Web_Bar_answer",
-    "group": "WebBar",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "sessionId",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "number",
-            "optional": false,
-            "field": "userId",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/webbar/index.js",
-    "groupTitle": "WebBar"
-  },
-  {
-    "type": "post",
-    "url": "/api/webbar/calls",
-    "title": "webrtc call list",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/webbar/calls -d '{\"userId\": 54}' \\\n -H \"Content-Type: application/json\" -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "Web_Bar_calls",
-    "group": "WebBar",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "number",
-            "optional": false,
-            "field": "userId",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/webbar/index.js",
-    "groupTitle": "WebBar"
-  },
-  {
-    "type": "post",
-    "url": "/api/webbar/hangup",
-    "title": "hangup webrtc call",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/webbar/hangup -d '{\"sessionId\": \"<sessionId>\", \"userId\": 54}' \\\n -H \"Content-Type: application/json\" -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "Web_Bar_hangup",
-    "group": "WebBar",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "sessionId",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "number",
-            "optional": false,
-            "field": "userId",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/webbar/index.js",
-    "groupTitle": "WebBar"
-  },
-  {
-    "type": "post",
-    "url": "/api/webbar/hold",
-    "title": "hold webrtc call",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/webbar/hold -d '{\"sessionId\": \"<sessionId>\", \"userId\": 54}' \\\n -H \"Content-Type: application/json\" -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "Web_Bar_hold",
-    "group": "WebBar",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "sessionId",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "number",
-            "optional": false,
-            "field": "userId",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/webbar/index.js",
-    "groupTitle": "WebBar"
-  },
-  {
-    "type": "post",
-    "url": "/api/webbar/unhold",
-    "title": "unhold webrtc call",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/webbar/unhold -d '{\"sessionId\": \"<sessionId>\", \"userId\": 54}' \\\n -H \"Content-Type: application/json\" -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "Web_Bar_hold",
-    "group": "WebBar",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "sessionId",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "number",
-            "optional": false,
-            "field": "userId",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/webbar/index.js",
-    "groupTitle": "WebBar"
-  },
-  {
-    "type": "post",
-    "url": "/api/webbar/originate",
-    "title": "Originate new webrtc call",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/webbar/originate -d '{\"callNumber\": \"0119692844\", \"userId\": 54}' \\\n -H \"Content-Type: application/json\" -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "Web_Bar_originate",
-    "group": "WebBar",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "callNumber",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "number",
-            "optional": false,
-            "field": "userId",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "callerId",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "callbackUrl",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/webbar/index.js",
-    "groupTitle": "WebBar"
-  },
-  {
-    "type": "post",
-    "url": "/api/webbar/transfer",
-    "title": "blind transfer webrtc call",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/webbar/transfer -d '{\"userId\": 54, \"sessionId\":\"<sessionId>\", \"transferNumber\":\"<transferNumber>\"}' \\\n -H \"Content-Type: application/json\" -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "Web_Bar_transfer",
-    "group": "WebBar",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "number",
-            "optional": false,
-            "field": "userId",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "string",
-            "optional": false,
-            "field": "sessionId",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "string",
-            "optional": false,
-            "field": "transferNumber",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/webbar/index.js",
-    "groupTitle": "WebBar"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/accounts/{id}/users",
-    "title": "Add agents to a whatsapp account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddAgents",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/accounts",
-    "title": "Creates a new Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateAccounts",
-    "group": "Whatsapp_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\""
-            ],
-            "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": "Text",
-            "optional": true,
-            "field": "notificationTemplate",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "notificationSound",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "notificationShake",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "waitForTheAssignedAgent",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "queueTransfer",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "queueTransferTimeout",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "agentTransfer",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "agentTransferTimeout",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "mandatoryDispositionPauseId",
-            "description": "<p>Status to put when mandatory disposition is enabled</p>"
-          },
-          {
-            "group": "Body",
-            "type": "Boolean",
-            "optional": true,
-            "field": "mandatoryDisposition",
-            "description": "<p>Enabled/disables mandatory dispo on a queue</p>"
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/whatsapp/accounts/{id}",
-    "title": "Deletes a Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteAccounts",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/accounts/describe",
-    "title": "Gets table info about Accounts",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeAccounts",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/accounts",
-    "title": "Gets a list of Accounts",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetAccounts",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/accounts/{id}/users",
-    "title": "Gets agents from whatsapp account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/users -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "GetAgents",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/whatsapp/accounts/{id}/users",
-    "title": "Removes agents from a whatsapp account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveAgents",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/whatsapp/accounts/{id}/canned_answers",
-    "title": "Removes canned answers from account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveAnswers",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "delete",
-    "url": "/api/whatsapp/accounts/{id}/dispositions",
-    "title": "Removes dispositions from account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveDispositions",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/accounts/{id}",
-    "title": "Gets a single Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowAccounts",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "put",
-    "url": "/api/whatsapp/messages/{id}/accept",
-    "title": "Accepts message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/messages/{id}/accept \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "acceptMessage",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappMessage/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/accounts/{id}/canned_answers",
-    "title": "Creates new canned answer",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/canned_answers -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addAnswer",
-    "group": "Whatsapp_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": ""
-          },
-          {
-            "group": "Body",
-            "type": "Virtual",
-            "optional": true,
-            "field": "name",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/accounts/{id}/applications",
-    "title": "Creates new applications",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/applications -d '[{\"app\": \"queue\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addApplications",
-    "group": "Whatsapp_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": "Text",
-            "optional": true,
-            "field": "appdata",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interval",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/accounts/{id}/dispositions",
-    "title": "Creates new disposition",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/dispositions -d '{\"name\": \"vip\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addDisposition",
-    "group": "Whatsapp_Accounts",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "name",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/accounts/{id}/canned_answers",
-    "title": "Gets account canned answers",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/canned_answers -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getAnswers",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/accounts/{id}/applications",
-    "title": "Gets account applications",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/applications -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getApplications",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/accounts/{id}/dispositions",
-    "title": "Gets account dispositions",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/dispositions -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getDispositions",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/accounts/{id}/notify",
-    "title": "Notify new message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/notify -d '{\"body\": \"hello world\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "notify",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <p>This API is used to create a new whatsapp message to be sent to the system.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "put",
-    "url": "/api/whatsapp/messages/{id}/reject",
-    "title": "Rejects message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "rejectMessage",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappMessage/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/accounts/{id}/send",
-    "title": "Send new whatsapp message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/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": "sendWhatsapp",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/messages/{id}/status",
-    "title": "Receive message status",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/messages/{id}/status \\ \n -H 'Content-Type: application/json' -v -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "statusMessage",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappMessage/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "put",
-    "url": "/api/whatsapp/accounts/{id}",
-    "title": "Update an existing Account",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateAccounts",
-    "group": "Whatsapp_Accounts",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappAccount/index.js",
-    "groupTitle": "Whatsapp_Accounts"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/applications",
-    "title": "Creates a new Application",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/applications -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateApplications",
-    "group": "Whatsapp_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": "Text",
-            "optional": true,
-            "field": "appdata",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "interval",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappApplication/index.js",
-    "groupTitle": "Whatsapp_Applications"
-  },
-  {
-    "type": "delete",
-    "url": "/api/whatsapp/applications/{id}",
-    "title": "Deletes a Application",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/applications/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteApplications",
-    "group": "Whatsapp_Applications",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappApplication/index.js",
-    "groupTitle": "Whatsapp_Applications"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/applications",
-    "title": "Gets a list of Applications",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/applications -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetApplications",
-    "group": "Whatsapp_Applications",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/applications?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/applications?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/applications?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/applications?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/applications?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappApplication/index.js",
-    "groupTitle": "Whatsapp_Applications"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/applications/{id}",
-    "title": "Gets a single Application",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/applications/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowApplications",
-    "group": "Whatsapp_Applications",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappApplication/index.js",
-    "groupTitle": "Whatsapp_Applications"
-  },
-  {
-    "type": "put",
-    "url": "/api/whatsapp/applications/{id}",
-    "title": "Update an existing Application",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/applications/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateApplications",
-    "group": "Whatsapp_Applications",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappApplication/index.js",
-    "groupTitle": "Whatsapp_Applications"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/interactions/{id}/tags",
-    "title": "Add tags to the interaction",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/interaction/{id}/tags -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddTags",
-    "group": "Whatsapp_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappInteraction/index.js",
-    "groupTitle": "Whatsapp_Interactions"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/interactions",
-    "title": "Creates a new Interaction",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/interactions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateInteractions",
-    "group": "Whatsapp_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappInteraction/index.js",
-    "groupTitle": "Whatsapp_Interactions"
-  },
-  {
-    "type": "delete",
-    "url": "/api/whatsapp/interactions/{id}",
-    "title": "Deletes a Interaction",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/interactions/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteInteractions",
-    "group": "Whatsapp_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappInteraction/index.js",
-    "groupTitle": "Whatsapp_Interactions"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/interactions/describe",
-    "title": "Gets table info about Interactions",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/interactions/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeInteractions",
-    "group": "Whatsapp_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappInteraction/index.js",
-    "groupTitle": "Whatsapp_Interactions"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/interactions",
-    "title": "Gets a list of Interactions",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/interactions -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetInteractions",
-    "group": "Whatsapp_Interactions",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/interactions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/interactions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/interactions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/interactions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/interactions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappInteraction/index.js",
-    "groupTitle": "Whatsapp_Interactions"
-  },
-  {
-    "type": "delete",
-    "url": "/api/whatsapp/interactions/{id}/tags",
-    "title": "Removes tags from interaction",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/interactions/{id}/tags?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveTags",
-    "group": "Whatsapp_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappInteraction/index.js",
-    "groupTitle": "Whatsapp_Interactions"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/interactions/{id}",
-    "title": "Gets a single Interaction",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/interactions/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowInteractions",
-    "group": "Whatsapp_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappInteraction/index.js",
-    "groupTitle": "Whatsapp_Interactions"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/interactions/{id}/messages",
-    "title": "Creates new messages",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/interactions/{id}/messages -d '[{\"to\": \"+3901119886500\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "addMessage",
-    "group": "Whatsapp_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappInteraction/index.js",
-    "groupTitle": "Whatsapp_Interactions"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/interactions/{id}/download",
-    "title": "Gets interaction",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/interactions/{id}/download -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "download",
-    "group": "Whatsapp_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappInteraction/index.js",
-    "groupTitle": "Whatsapp_Interactions"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/interactions/{id}/messages",
-    "title": "Gets interaction messages",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/interactions/{id}/messages -v -u {name}:{password} -X GET",
-        "type": "json"
-      }
-    ],
-    "name": "getMessages",
-    "group": "Whatsapp_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappInteraction/index.js",
-    "groupTitle": "Whatsapp_Interactions"
-  },
-  {
-    "type": "put",
-    "url": "/api/whatsapp/interactions/{id}",
-    "title": "Update an existing Interaction",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/interactions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateInteractions",
-    "group": "Whatsapp_Interactions",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappInteraction/index.js",
-    "groupTitle": "Whatsapp_Interactions"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/messages",
-    "title": "Creates a new Message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateMessages",
-    "group": "Whatsapp_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappMessage/index.js",
-    "groupTitle": "Whatsapp_Messages"
-  },
-  {
-    "type": "delete",
-    "url": "/api/whatsapp/messages/{id}",
-    "title": "Deletes a Message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/messages/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteMessages",
-    "group": "Whatsapp_Messages",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappMessage/index.js",
-    "groupTitle": "Whatsapp_Messages"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/messages/describe",
-    "title": "Gets table info about Messages",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/messages/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeMessages",
-    "group": "Whatsapp_Messages",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappMessage/index.js",
-    "groupTitle": "Whatsapp_Messages"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/messages",
-    "title": "Gets a list of Messages",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/messages -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetMessages",
-    "group": "Whatsapp_Messages",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappMessage/index.js",
-    "groupTitle": "Whatsapp_Messages"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/messages/{id}",
-    "title": "Gets a single Message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/messages/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowMessages",
-    "group": "Whatsapp_Messages",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappMessage/index.js",
-    "groupTitle": "Whatsapp_Messages"
-  },
-  {
-    "type": "put",
-    "url": "/api/whatsapp/messages/{id}",
-    "title": "Update an existing Message",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateMessages",
-    "group": "Whatsapp_Messages",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappMessage/index.js",
-    "groupTitle": "Whatsapp_Messages"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/reports/queue",
-    "title": "Creates a new Whatsapp Queue Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/reports/queue -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateWhatsapp_Queue_Reports",
-    "group": "Whatsapp_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueueReport/index.js",
-    "groupTitle": "Whatsapp_Queue_Reports"
-  },
-  {
-    "type": "delete",
-    "url": "/api/whatsapp/reports/queue/{id}",
-    "title": "Deletes a Whatsapp Queue Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/reports/queue/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteWhatsapp_Queue_Reports",
-    "group": "Whatsapp_Queue_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueueReport/index.js",
-    "groupTitle": "Whatsapp_Queue_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/reports/queue/describe",
-    "title": "Gets table info about Whatsapp Queue Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/reports/queue/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeWhatsapp_Queue_Reports",
-    "group": "Whatsapp_Queue_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueueReport/index.js",
-    "groupTitle": "Whatsapp_Queue_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/reports/queue",
-    "title": "Gets a list of Whatsapp Queue Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/reports/queue -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetWhatsapp_Queue_Reports",
-    "group": "Whatsapp_Queue_Reports",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/reports/queue?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/reports/queue?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/reports/queue?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/reports/queue?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/reports/queue?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueueReport/index.js",
-    "groupTitle": "Whatsapp_Queue_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/reports/queue/{id}",
-    "title": "Gets a single Whatsapp Queue Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/reports/queue/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowWhatsapp_Queue_Reports",
-    "group": "Whatsapp_Queue_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueueReport/index.js",
-    "groupTitle": "Whatsapp_Queue_Reports"
-  },
-  {
-    "type": "put",
-    "url": "/api/whatsapp/reports/queue/{id}",
-    "title": "Update an existing Whatsapp Queue Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/reports/queue/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateWhatsapp_Queue_Reports",
-    "group": "Whatsapp_Queue_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueueReport/index.js",
-    "groupTitle": "Whatsapp_Queue_Reports"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/queues/{id}/users",
-    "title": "Add agents to a queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/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": "Whatsapp_Queues",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueue/index.js",
-    "groupTitle": "Whatsapp_Queues"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/queues/{id}/teams",
-    "title": "Add teams to a queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "AddTeams",
-    "group": "Whatsapp_Queues",
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueue/index.js",
-    "groupTitle": "Whatsapp_Queues"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/queues",
-    "title": "Creates a new Queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateQueues",
-    "group": "Whatsapp_Queues",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "name",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "Integer",
-            "optional": true,
-            "field": "timeout",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"rrmemory\"",
-              "\"beepall\"",
-              "\"roundrobin\""
-            ],
-            "optional": true,
-            "field": "strategy",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueue/index.js",
-    "groupTitle": "Whatsapp_Queues"
-  },
-  {
-    "type": "delete",
-    "url": "/api/whatsapp/queues/{id}",
-    "title": "Deletes a Queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/queues/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteQueues",
-    "group": "Whatsapp_Queues",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueue/index.js",
-    "groupTitle": "Whatsapp_Queues"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/queues/describe",
-    "title": "Gets table info about Queues",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/queues/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeQueues",
-    "group": "Whatsapp_Queues",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueue/index.js",
-    "groupTitle": "Whatsapp_Queues"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/queues/{id}/users",
-    "title": "Gets queue agents",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/queues/{id}/users -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "GetAgents",
-    "group": "Whatsapp_Queues",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueue/index.js",
-    "groupTitle": "Whatsapp_Queues"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/queues/{id}/members",
-    "title": "GetMembers",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/queues/{id}/members  -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetMembers",
-    "group": "Whatsapp_Queues",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueue/index.js",
-    "groupTitle": "Whatsapp_Queues"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/queues",
-    "title": "Gets a list of Queues",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/queues -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetQueues",
-    "group": "Whatsapp_Queues",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueue/index.js",
-    "groupTitle": "Whatsapp_Queues"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/queues/{id}/teams",
-    "title": "Gets queues list",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/queues/{id}/teams -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetTeams",
-    "group": "Whatsapp_Queues",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueue/index.js",
-    "groupTitle": "Whatsapp_Queues"
-  },
-  {
-    "type": "delete",
-    "url": "/api/whatsapp/queues/{id}/users",
-    "title": "Removes agents from a queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "RemoveAgents",
-    "group": "Whatsapp_Queues",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueue/index.js",
-    "groupTitle": "Whatsapp_Queues"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/queues/{id}",
-    "title": "Gets a single Queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/queues/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowQueues",
-    "group": "Whatsapp_Queues",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueue/index.js",
-    "groupTitle": "Whatsapp_Queues"
-  },
-  {
-    "type": "put",
-    "url": "/api/whatsapp/queues/{id}",
-    "title": "Update an existing Queue",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateQueues",
-    "group": "Whatsapp_Queues",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappQueue/index.js",
-    "groupTitle": "Whatsapp_Queues"
-  },
-  {
-    "type": "post",
-    "url": "/api/whatsapp/reports/transfer",
-    "title": "Creates a new Whatsapp Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/reports/transfer -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
-        "type": "json"
-      }
-    ],
-    "name": "CreateWhatsapp_Transfer_Reports",
-    "group": "Whatsapp_Transfer_Reports",
-    "parameter": {
-      "fields": {
-        "Body": [
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": false,
-            "field": "uniqueid",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"account\"",
-              "\"agent\"",
-              "\"queue\""
-            ],
-            "optional": false,
-            "field": "type",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "transferredAt",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappTransferReport/index.js",
-    "groupTitle": "Whatsapp_Transfer_Reports"
-  },
-  {
-    "type": "delete",
-    "url": "/api/whatsapp/reports/transfer/{id}",
-    "title": "Deletes a Whatsapp Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/reports/transfer/{id} -v -u {name}:{password} -X DELETE",
-        "type": "json"
-      }
-    ],
-    "name": "DeleteWhatsapp_Transfer_Reports",
-    "group": "Whatsapp_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappTransferReport/index.js",
-    "groupTitle": "Whatsapp_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/reports/transfer/describe",
-    "title": "Gets table info about Whatsapp Transfer Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/reports/transfer/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeWhatsapp_Transfer_Reports",
-    "group": "Whatsapp_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappTransferReport/index.js",
-    "groupTitle": "Whatsapp_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/reports/transfer",
-    "title": "Gets a list of Whatsapp Transfer Reports",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/reports/transfer -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "GetWhatsapp_Transfer_Reports",
-    "group": "Whatsapp_Transfer_Reports",
-    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/reports/transfer?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/reports/transfer?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/reports/transfer?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/reports/transfer?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/reports/transfer?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappTransferReport/index.js",
-    "groupTitle": "Whatsapp_Transfer_Reports"
-  },
-  {
-    "type": "get",
-    "url": "/api/whatsapp/reports/transfer/{id}",
-    "title": "Gets a single Whatsapp Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/reports/transfer/{id} -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "ShowWhatsapp_Transfer_Reports",
-    "group": "Whatsapp_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappTransferReport/index.js",
-    "groupTitle": "Whatsapp_Transfer_Reports"
-  },
-  {
-    "type": "put",
-    "url": "/api/whatsapp/reports/transfer/{id}",
-    "title": "Update an existing Whatsapp Transfer Report",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/whatsapp/reports/transfer/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
-        "type": "json"
-      }
-    ],
-    "name": "updateWhatsapp_Transfer_Reports",
-    "group": "Whatsapp_Transfer_Reports",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/whatsappTransferReport/index.js",
-    "groupTitle": "Whatsapp_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/zendesk/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/zendesk/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/zendesk/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/zendesk/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/zendesk/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/zendesk/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/zendesk/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/zendesk/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/zendesk/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/zendesk/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/zendesk/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/zendesk/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/zendesk/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/zendesk/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/zendesk/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "host",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "zone",
-            "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": "serverUrl",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "code",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "refreshToken",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/zoho/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/zoho/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/zoho/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/zoho/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/zoho/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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",
-            "allowedValues": [
-              "\"lead\"",
-              "\"contact\"",
-              "\"nothing\""
-            ],
-            "optional": true,
-            "field": "moduleCreate",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "allowedValues": [
-              "\"contact_lead\"",
-              "\"contact\"",
-              "\"lead\""
-            ],
-            "optional": true,
-            "field": "moduleSearch",
-            "description": ""
-          },
-          {
-            "group": "Body",
-            "type": "String",
-            "optional": true,
-            "field": "description",
-            "description": ""
-          }
-        ]
-      }
-    },
-    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/zoho/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/zoho/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/zoho/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/zoho/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/zoho/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/zoho/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/zoho/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/zoho/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/zoho/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/zoho/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "version": "0.0.0",
-    "filename": "server/api/cdr/index.js",
-    "groupTitle": "cdr"
-  },
-  {
-    "type": "get",
-    "url": "/api/cdr/describe",
-    "title": "Gets table info about Cdrs",
-    "examples": [
-      {
-        "title": "Example usage:",
-        "content": "curl https://{domain}/api/cdr/describe -v -u {name}:{password}",
-        "type": "json"
-      }
-    ],
-    "name": "DescribeCdrs",
-    "group": "cdr",
-    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cdr?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cdr?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cdr?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cdr?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cdr?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "data",
-            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voiceQueuesLog?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voiceQueuesLog?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voiceQueuesLog?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voiceQueuesLog?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voiceQueuesLog?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
-    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/analytics/custom_reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/analytics/custom_reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/analytics/custom_reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/analytics/custom_reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/analytics/custom_reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/analytics/default_reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/analytics/default_reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/analytics/default_reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/analytics/default_reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/analytics/default_reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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",
            "optional": false,
            "field": "basename",
            "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": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "reportId",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "reportType",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/analytics/extracted_reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/analytics/extracted_reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/analytics/extracted_reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/analytics/extracted_reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/analytics/extracted_reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "optional": true,
            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "optional": true,
            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/analytics/field_reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/analytics/field_reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/analytics/field_reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/analytics/field_reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/analytics/field_reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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 -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addFields",
    "group": "Analytic_Field_Reports",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/analytics/metrics?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/analytics/metrics?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/analytics/metrics?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/analytics/metrics?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/analytics/metrics?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/analytics/tree_reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/analytics/tree_reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/analytics/tree_reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/analytics/tree_reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/analytics/tree_reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/analyticTreeReport/index.js",
    "groupTitle": "Analytic_Tree_Reports"
  },
  {
    "type": "post",
    "url": "/api/attachments/clone",
    "title": "Clone an existing Attachment",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/attachments/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CloneAttachments",
    "group": "Attachments",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/attachment/index.js",
    "groupTitle": "Attachments"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/attachments?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/attachments?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/attachments?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/attachments?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/attachments?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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\": \"[email-masked]\"}' \\\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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/automations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/automations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/automations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/automations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/automations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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\": \"[email-masked]\", \"...\": \"...\"}]' \\ \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": "<p>Allowed values: contactManager, integration, motionbar, jscripty, urlForward, browser, bot, script</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "data1",
            "description": "<p>contactManager[ListId], integration[intName(zendesk)], motionbar[Popup(0),URL(1),WinApp(2)], urlForward[GET,POST], browser[TemplateId(0),URL(1)]</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "data2",
            "description": "<p>integration[AccountId], motionbar[TemplateId,URL,WinAppPath], urlForward[URL]</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "data3",
            "description": "<p>motionbar[NULL,NULL,WinAppArguments]</p>"
          },
          {
            "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": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "data7",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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\": \"[email-masked]\", \"...\": \"...\"}]' \\ \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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/canned_answers?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/canned_answers?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/canned_answers?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/canned_answers?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/canned_answers?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cannedAnswer/index.js",
    "groupTitle": "Canned_Answers"
  },
  {
    "type": "get",
    "url": "/chat/internal/users",
    "title": "Gets Users Last Messages",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/chat/internal/users -v -u {name}:{password}  -X GET",
        "type": "json"
      }
    ],
    "name": "getLastUsersMessages",
    "group": "ChatInternalMessage",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatInternalMessage/index.js",
    "groupTitle": "ChatInternalMessage"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatApplication/index.js",
    "groupTitle": "Chat_Applications"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/groups?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/groups?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/groups?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/groups?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/groups?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "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": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "closeReason",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "customerPort",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "vidaooSessionId",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/interactions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/interactions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/interactions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/interactions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/interactions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <p>This API is used to set as abandon an interaction and stop the routing.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatInteraction/index.js",
    "groupTitle": "Chat_Interactions"
  },
  {
    "type": "post",
    "url": "/api/chat/interactions/{id}/vidaoo",
    "title": "Create Vidaoo Session",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/interactions/{id}/vidaoo  -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "createVidaooSession",
    "group": "Chat_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatInteraction/index.js",
    "groupTitle": "Chat_Interactions"
  },
  {
    "type": "put",
    "url": "/api/chat/interactions/{id}/custom_update",
    "title": "Update interaction",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/interactions/{id}/custom_update -d '{\"channel\": \"chat\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "customUpdate",
    "group": "Chat_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <p>This API is used to update an interaction.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatInteraction/index.js",
    "groupTitle": "Chat_Interactions"
  },
  {
    "type": "get",
    "url": "/api/chat/interactions/{id}/download",
    "title": "Gets interaction",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/interactions/{id}/download -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "download",
    "group": "Chat_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/internal/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/internal/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/internal/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/internal/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/internal/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/offline_messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/offline_messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/offline_messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/offline_messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/offline_messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/reports/queue?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/reports/queue?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/reports/queue?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/reports/queue?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/reports/queue?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatQueue/index.js",
    "groupTitle": "Chat_Queues"
  },
  {
    "type": "post",
    "url": "/api/chat/reports/transfer",
    "title": "Creates a new Chat Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/reports/transfer -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateChat_Transfer_Reports",
    "group": "Chat_Transfer_Reports",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "uniqueid",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"account\"",
              "\"agent\"",
              "\"queue\""
            ],
            "optional": false,
            "field": "type",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "transferredAt",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatTransferReport/index.js",
    "groupTitle": "Chat_Transfer_Reports"
  },
  {
    "type": "delete",
    "url": "/api/chat/reports/transfer/{id}",
    "title": "Deletes a Chat Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/reports/transfer/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteChat_Transfer_Reports",
    "group": "Chat_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatTransferReport/index.js",
    "groupTitle": "Chat_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/chat/reports/transfer/describe",
    "title": "Gets table info about Chat Transfer Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/reports/transfer/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeChat_Transfer_Reports",
    "group": "Chat_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatTransferReport/index.js",
    "groupTitle": "Chat_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/chat/reports/transfer",
    "title": "Gets a list of Chat Transfer Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/reports/transfer -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetChat_Transfer_Reports",
    "group": "Chat_Transfer_Reports",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/reports/transfer?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/reports/transfer?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/reports/transfer?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/reports/transfer?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/reports/transfer?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/chatTransferReport/index.js",
    "groupTitle": "Chat_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/chat/reports/transfer/{id}",
    "title": "Gets a single Chat Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/reports/transfer/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowChat_Transfer_Reports",
    "group": "Chat_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatTransferReport/index.js",
    "groupTitle": "Chat_Transfer_Reports"
  },
  {
    "type": "put",
    "url": "/api/chat/reports/transfer/{id}",
    "title": "Update an existing Chat Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/reports/transfer/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateChat_Transfer_Reports",
    "group": "Chat_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatTransferReport/index.js",
    "groupTitle": "Chat_Transfer_Reports"
  },
  {
    "type": "post",
    "url": "/api/chat/websites/{id}/users",
    "title": "Add agents to a website",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/websites/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddAgents",
    "group": "Chat_Websites",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatWebsite/index.js",
    "groupTitle": "Chat_Websites"
  },
  {
    "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": true,
            "field": "customerAlias",
            "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": "Boolean",
            "optional": true,
            "field": "enableSendButton",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "feedbackTitle",
            "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": "Boolean",
            "optional": true,
            "field": "enableCustomerCheckmarks",
            "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": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "notificationTemplate",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "notificationSound",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "notificationShake",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "hideWhenOffline",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "agentIdentifier",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "waitForTheAssignedAgent",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "alignment",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "verticalAlignment",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "messagesAlignment",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "defaultTitle",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "customerAvatar",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "showCustomerAvatar",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "messageFontSize",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "backgroundColor",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "queueTransfer",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "queueTransferTimeout",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "agentTransfer",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "agentTransferTimeout",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "systemAlias",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "systemAvatar",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "mandatoryDispositionPauseId",
            "description": "<p>Status to put when mandatory disposition is enabled</p>"
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "mandatoryDisposition",
            "description": "<p>Enabled/disables mandatory dispo on a queue</p>"
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "vidaooEscalation",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "vidaooApiKey",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatWebsite/index.js",
    "groupTitle": "Chat_Websites"
  },
  {
    "type": "get",
    "url": "/api/chat/websites/{id}/users",
    "title": "Gets agents from website",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/websites/{id}/users -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetAgents",
    "group": "Chat_Websites",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/chat/websites?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/chat/websites?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/chat/websites?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/chat/websites?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/chat/websites?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/chatWebsite/index.js",
    "groupTitle": "Chat_Websites"
  },
  {
    "type": "delete",
    "url": "/api/chat/websites/{id}/users",
    "title": "Removes agents from a website",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/websites/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveAgents",
    "group": "Chat_Websites",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatWebsite/index.js",
    "groupTitle": "Chat_Websites"
  },
  {
    "type": "delete",
    "url": "/api/chat/websites/{id}/canned_answers",
    "title": "Removes canned answers from account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/websites/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveAnswers",
    "group": "Chat_Websites",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatWebsite/index.js",
    "groupTitle": "Chat_Websites"
  },
  {
    "type": "delete",
    "url": "/api/chat/websites/{id}/dispositions",
    "title": "Removes canned answers from account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/websites/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveDispositions",
    "group": "Chat_Websites",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": ""
          },
          {
            "group": "Body",
            "type": "Virtual",
            "optional": true,
            "field": "name",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "optional": true,
            "field": "appdata",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interval",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatWebsite/index.js",
    "groupTitle": "Chat_Websites"
  },
  {
    "type": "post",
    "url": "/api/chat/websites/{id}/customer_avatar",
    "title": "Add customer avatar",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/websites/{id}/customer_avatar -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addCustomerAvatar",
    "group": "Chat_Websites",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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\": \"vip\"}' -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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "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": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "closeReason",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "customerPort",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "vidaooSessionId",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatWebsite/index.js",
    "groupTitle": "Chat_Websites"
  },
  {
    "type": "post",
    "url": "/api/chat/websites/{id}/system_avatar",
    "title": "Add system avatar",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/websites/{id}/system_avatar -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addSystemAvatar",
    "group": "Chat_Websites",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatWebsite/index.js",
    "groupTitle": "Chat_Websites"
  },
  {
    "type": "get",
    "url": "/api/chat/websites/{id}/customer_avatar",
    "title": "Get Customer Avatar",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/websites/{id}/customer_avatar -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getCustomerAvatar",
    "group": "Chat_Websites",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatWebsite/index.js",
    "groupTitle": "Chat_Websites"
  },
  {
    "type": "get",
    "url": "/api/chat/websites/{id}/dispositions",
    "title": "Gets account 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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatWebsite/index.js",
    "groupTitle": "Chat_Websites"
  },
  {
    "type": "get",
    "url": "/api/chat/websites/{id}/system_avatar",
    "title": "Get System Avatar",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/chat/websites/{id}/system_avatar -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getSystemAvatar",
    "group": "Chat_Websites",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <p>This API is used to create a new chat message to be sent to the system.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatWebsite/index.js",
    "groupTitle": "Chat_Websites"
  },
  {
    "type": "post",
    "url": "/api/cloudProviders",
    "title": "Creates a new CloudProvider",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cloudProviders -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateCloudProviders",
    "group": "CloudProviders",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "name",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"AmazonAWS\"",
              "\"Google\""
            ],
            "optional": false,
            "field": "service",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "data1",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "data2",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cloudProvider/index.js",
    "groupTitle": "CloudProviders"
  },
  {
    "type": "delete",
    "url": "/api/cloudProviders/{id}",
    "title": "Deletes a CloudProvider",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cloudProviders/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteCloudProviders",
    "group": "CloudProviders",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cloudProvider/index.js",
    "groupTitle": "CloudProviders"
  },
  {
    "type": "get",
    "url": "/api/cloudProviders",
    "title": "Gets a list of CloudProviders",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cloudProviders -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetCloudProviders",
    "group": "CloudProviders",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cloudProviders?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cloudProviders?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cloudProviders?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cloudProviders?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cloudProviders?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/cloudProvider/index.js",
    "groupTitle": "CloudProviders"
  },
  {
    "type": "get",
    "url": "/api/cloudProviders/{id}",
    "title": "Gets a single CloudProvider",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cloudProviders/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowCloudProviders",
    "group": "CloudProviders",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cloudProvider/index.js",
    "groupTitle": "CloudProviders"
  },
  {
    "type": "put",
    "url": "/api/cloudProviders/{id}",
    "title": "Update an existing CloudProvider",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cloudProviders/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateCloudProviders",
    "group": "CloudProviders",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cloudProvider/index.js",
    "groupTitle": "CloudProviders"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cmCompany/index.js",
    "groupTitle": "Cm_Companies"
  },
  {
    "type": "get",
    "url": "/api/cm/companies/describe",
    "title": "Gets table info about Companies",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cm/companies/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeCompanies",
    "group": "Cm_Companies",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/companies?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/companies?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/companies?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/companies?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/companies?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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\": \"[email-masked]\", \"...\": \"...\"}]' \\ \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": "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": true,
            "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": "fb_data",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "twitter",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "skype",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "teams",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "viber",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "line",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "wechat",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "telegram",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "UserId",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "priority",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "scheduledat",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cmContact/index.js",
    "groupTitle": "Cm_Contacts"
  },
  {
    "type": "get",
    "url": "/api/cm/contacts",
    "title": "Gets a list of Contacts",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cm/contacts -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetContacts",
    "group": "Cm_Contacts",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/contacts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/contacts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/contacts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/contacts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/contacts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cmContact/index.js",
    "groupTitle": "Cm_Contacts"
  },
  {
    "type": "post",
    "url": "/api/cm/contacts/create_many",
    "title": "Create Contacts",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cm/contacts/create_many -d '[{\"firstName\": \"John\", \"lastName\": \"doe\", \"...\": \"...\"}]' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "bulkCreate",
    "group": "Cm_Contacts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cmContact/index.js",
    "groupTitle": "Cm_Contacts"
  },
  {
    "type": "get",
    "url": "/api/cm/contacts/{id}/tags",
    "title": "Gets configurations tags",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cm/contacts/{id}/tags -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getTags",
    "group": "Cm_Contacts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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 '{\"from\": 1, \"to\": 2}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "merge",
    "group": "Cm_Contacts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cmContact/index.js",
    "groupTitle": "Cm_Contacts"
  },
  {
    "type": "post",
    "url": "/api/cm/contacts/{id}/tags",
    "title": "Sets new tags",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cm/contacts/{id}/tags -d '{\"ids\": [1,12]}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "setTags",
    "group": "Cm_Contacts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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 '{\"firstName\": \"John\", \"lastName\": \"Doe\"}' -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "update",
    "group": "Cm_Contacts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/custom_fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/custom_fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/custom_fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/custom_fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/custom_fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "countnosuchnumberretry",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "countdropretry",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "countabandonedretry",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "countmachineretry",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "countagentrejectretry",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/hopper?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/hopper?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/hopper?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/hopper?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/hopper?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/hopper_black?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/hopper_black?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/hopper_black?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/hopper_black?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/hopper_black?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/hopper_final?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/hopper_final?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/hopper_final?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/hopper_final?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/hopper_final?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "_checkContactHopper",
    "group": "Cm_Hopper_Final",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "originatecalleridnum",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "originatecalleridname",
            "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": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "countnosuchnumberretry",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "countdropretry",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "countabandonedretry",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "countmachineretry",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "countagentrejectretry",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/hopper_history?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/hopper_history?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/hopper_history?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/hopper_history?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/hopper_history?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "dialPrefix",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cmList/index.js",
    "groupTitle": "Cm_Lists"
  },
  {
    "type": "get",
    "url": "/api/cm/lists/describe",
    "title": "Gets table info about Lists",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cm/lists/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeLists",
    "group": "Cm_Lists",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cm/lists?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cm/lists?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cm/lists?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cm/lists?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cm/lists?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cmList/index.js",
    "groupTitle": "Cm_Lists"
  },
  {
    "type": "delete",
    "url": "/api/cm/lists/{id}/dispositions",
    "title": "Removes dispositions from account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cm/lists/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveDispositions",
    "group": "Cm_Lists",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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\": \"[email-masked]\", \"...\": \"...\"}]' \\ \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": "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": true,
            "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": "fb_data",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "twitter",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "skype",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "teams",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "viber",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "line",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "wechat",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "telegram",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "UserId",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "priority",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "scheduledat",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cmList/index.js",
    "groupTitle": "Cm_Lists"
  },
  {
    "type": "post",
    "url": "/api/cm/lists/{id}/dispositions",
    "title": "Creates new disposition",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cm/lists/{id}/dispositions -d '{\"name\": \"vip\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addDisposition",
    "group": "Cm_Lists",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "name",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cmList/index.js",
    "groupTitle": "Cm_Lists"
  },
  {
    "type": "get",
    "url": "/api/cm/lists/{id}/dispositions",
    "title": "Gets list 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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cmList/index.js",
    "groupTitle": "Cm_Lists"
  },
  {
    "type": "post",
    "url": "/api/cm/contacts/upload/:id",
    "title": "Import new contacts by csv",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cm/contacts/upload/:id -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "import",
    "group": "Cm_contacts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cmContact/index.js",
    "groupTitle": "Cm_contacts"
  },
  {
    "type": "post",
    "url": "/api/cm/contacts/upload",
    "title": "Upload csv",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cm/contacts/upload -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "upload",
    "group": "Cm_contacts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cmContact/index.js",
    "groupTitle": "Cm_contacts"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/dashboards?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/dashboards?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/dashboards?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/dashboards?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/dashboards?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Dashboards",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/dashboard/index.js",
    "groupTitle": "Dashboards"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/desk/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/desk/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/desk/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/desk/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/desk/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/desk/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/desk/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/desk/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/desk/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/desk/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/desk/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/desk/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/desk/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/desk/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/desk/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDeskField/index.js",
    "groupTitle": "Desk_Fields"
  },
  {
    "type": "post",
    "url": "/api/dispositions",
    "title": "Creates a new Disposition",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/dispositions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateDispositions",
    "group": "Dispositions",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "name",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/disposition/index.js",
    "groupTitle": "Dispositions"
  },
  {
    "type": "delete",
    "url": "/api/dispositions/{id}",
    "title": "Deletes a Disposition",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/dispositions/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteDispositions",
    "group": "Dispositions",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/disposition/index.js",
    "groupTitle": "Dispositions"
  },
  {
    "type": "get",
    "url": "/api/dispositions",
    "title": "Gets a list of Dispositions",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/dispositions -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetDispositions",
    "group": "Dispositions",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/dispositions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/dispositions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/dispositions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/dispositions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/dispositions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/disposition/index.js",
    "groupTitle": "Dispositions"
  },
  {
    "type": "get",
    "url": "/api/dispositions/{id}",
    "title": "Gets a single Disposition",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/dispositions/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowDispositions",
    "group": "Dispositions",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/disposition/index.js",
    "groupTitle": "Dispositions"
  },
  {
    "type": "put",
    "url": "/api/dispositions/{id}",
    "title": "Update an existing Disposition",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/dispositions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateDispositions",
    "group": "Dispositions",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/disposition/index.js",
    "groupTitle": "Dispositions"
  },
  {
    "type": "post",
    "url": "/api/integrations/dynamics365/accounts",
    "title": "Creates a new Dynamics365 Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateDynamics365_Accounts",
    "group": "Dynamics365_Accounts",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "name",
            "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": "tenantId",
            "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": "serverUrl",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Account/index.js",
    "groupTitle": "Dynamics365_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/integrations/dynamics365/accounts/{id}",
    "title": "Deletes a Dynamics365 Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/accounts/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteDynamics365_Accounts",
    "group": "Dynamics365_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Account/index.js",
    "groupTitle": "Dynamics365_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/dynamics365/accounts",
    "title": "Gets a list of Dynamics365 Accounts",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/accounts -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetDynamics365_Accounts",
    "group": "Dynamics365_Accounts",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/dynamics365/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/dynamics365/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/dynamics365/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/dynamics365/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/dynamics365/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Account/index.js",
    "groupTitle": "Dynamics365_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/dynamics365/accounts/{id}",
    "title": "Gets a single Dynamics365 Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/accounts/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowDynamics365_Accounts",
    "group": "Dynamics365_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Account/index.js",
    "groupTitle": "Dynamics365_Accounts"
  },
  {
    "type": "post",
    "url": "/api/integrations/dynamics365/accounts/{id}/configurations",
    "title": "Creates new configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addConfiguration",
    "group": "Dynamics365_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Account/index.js",
    "groupTitle": "Dynamics365_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/dynamics365/accounts/{id}/configurations",
    "title": "Gets account configurations",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/accounts/{id}/configurations -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getConfigurations",
    "group": "Dynamics365_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Account/index.js",
    "groupTitle": "Dynamics365_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/dynamics365/accounts/{id}/fields",
    "title": "Gets account fields",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/accounts/{id}/fields -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getFields",
    "group": "Dynamics365_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Account/index.js",
    "groupTitle": "Dynamics365_Accounts"
  },
  {
    "type": "put",
    "url": "/api/integrations/dynamics365/accounts/{id}",
    "title": "Update an existing Dynamics365 Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateDynamics365_Accounts",
    "group": "Dynamics365_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Account/index.js",
    "groupTitle": "Dynamics365_Accounts"
  },
  {
    "type": "post",
    "url": "/api/integrations/dynamics365/configurations",
    "title": "Creates a new Dynamics365 Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateDynamics365_Configurations",
    "group": "Dynamics365_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": [
              "\"incident\"",
              "\"phonecall\""
            ],
            "optional": true,
            "field": "ticketType",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Configuration/index.js",
    "groupTitle": "Dynamics365_Configurations"
  },
  {
    "type": "delete",
    "url": "/api/integrations/dynamics365/configurations/{id}",
    "title": "Deletes a Dynamics365 Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/configurations/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteDynamics365_Configurations",
    "group": "Dynamics365_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Configuration/index.js",
    "groupTitle": "Dynamics365_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/dynamics365/configurations",
    "title": "Gets a list of Dynamics365 Configurations",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/configurations -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetDynamics365_Configurations",
    "group": "Dynamics365_Configurations",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/dynamics365/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/dynamics365/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/dynamics365/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/dynamics365/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/dynamics365/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Configuration/index.js",
    "groupTitle": "Dynamics365_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/dynamics365/configurations/{id}",
    "title": "Gets a single Dynamics365 Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/configurations/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowDynamics365_Configurations",
    "group": "Dynamics365_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Configuration/index.js",
    "groupTitle": "Dynamics365_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/dynamics365/configurations/{id}/descriptions",
    "title": "Gets configurations descriptions",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/configurations/{id}/descriptions -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getDescriptions",
    "group": "Dynamics365_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Configuration/index.js",
    "groupTitle": "Dynamics365_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/dynamics365/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": "Dynamics365_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Configuration/index.js",
    "groupTitle": "Dynamics365_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/zoho/configurations/{id}/subjects",
    "title": "Gets configurations subjects",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/configurations/{id}/subjects -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getSubjects",
    "group": "Dynamics365_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Configuration/index.js",
    "groupTitle": "Dynamics365_Configurations"
  },
  {
    "type": "put",
    "url": "/api/integrations/dynamics365/configurations/{id}",
    "title": "Update an existing Dynamics365 Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateDynamics365_Configurations",
    "group": "Dynamics365_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Configuration/index.js",
    "groupTitle": "Dynamics365_Configurations"
  },
  {
    "type": "post",
    "url": "/api/integrations/dynamics365/fields",
    "title": "Creates a new Dynamics365 Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateDynamics365_Fields",
    "group": "Dynamics365_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Field/index.js",
    "groupTitle": "Dynamics365_Fields"
  },
  {
    "type": "delete",
    "url": "/api/integrations/dynamics365/fields/{id}",
    "title": "Deletes a Dynamics365 Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/fields/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteDynamics365_Fields",
    "group": "Dynamics365_Fields",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Field/index.js",
    "groupTitle": "Dynamics365_Fields"
  },
  {
    "type": "get",
    "url": "/api/integrations/dynamics365/fields",
    "title": "Gets a list of Dynamics365 Fields",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/fields -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetDynamics365_Fields",
    "group": "Dynamics365_Fields",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/dynamics365/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/dynamics365/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/dynamics365/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/dynamics365/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/dynamics365/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Field/index.js",
    "groupTitle": "Dynamics365_Fields"
  },
  {
    "type": "get",
    "url": "/api/integrations/dynamics365/fields/{id}",
    "title": "Gets a single Dynamics365 Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/fields/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowDynamics365_Fields",
    "group": "Dynamics365_Fields",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Field/index.js",
    "groupTitle": "Dynamics365_Fields"
  },
  {
    "type": "put",
    "url": "/api/integrations/dynamics365/fields/{id}",
    "title": "Update an existing Dynamics365 Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/dynamics365/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateDynamics365_Fields",
    "group": "Dynamics365_Fields",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intDynamics365Field/index.js",
    "groupTitle": "Dynamics365_Fields"
  },
  {
    "type": "post",
    "url": "/api/fax/accounts/{id}/users",
    "title": "Add agents to a fax account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/fax/accounts/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddAgents",
    "group": "Fax_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxAccount/index.js",
    "groupTitle": "Fax_Accounts"
  },
  {
    "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": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "notificationTemplate",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "notificationSound",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "notificationShake",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "waitForTheAssignedAgent",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "queueTransfer",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "queueTransferTimeout",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "agentTransfer",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "agentTransferTimeout",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "mandatoryDispositionPauseId",
            "description": "<p>Status to put when mandatory disposition is enabled</p>"
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "mandatoryDisposition",
            "description": "<p>Enabled/disables mandatory dispo on a queue</p>"
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/faxAccount/index.js",
    "groupTitle": "Fax_Accounts"
  },
  {
    "type": "get",
    "url": "/api/fax/accounts/{id}/users",
    "title": "Gets agents from fax account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/fax/accounts/{id}/users -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetAgents",
    "group": "Fax_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxAccount/index.js",
    "groupTitle": "Fax_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/fax/accounts/{id}/users",
    "title": "Removes agents from a fax account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/fax/accounts/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveAgents",
    "group": "Fax_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxAccount/index.js",
    "groupTitle": "Fax_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/fax/accounts/{id}/dispositions",
    "title": "Removes dispositions from account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/fax/accounts/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveDispositions",
    "group": "Fax_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": ""
          },
          {
            "group": "Body",
            "type": "Virtual",
            "optional": true,
            "field": "name",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "optional": true,
            "field": "appdata",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interval",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "optional": true,
            "field": "appdata",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interval",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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\": \"vip\"}' -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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "optional": true,
            "field": "appdata",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interval",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "optional": true,
            "field": "appdata",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interval",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/applications?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/applications?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/applications?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/applications?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/applications?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxApplication/index.js",
    "groupTitle": "Fax_Applications"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/interactions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/interactions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/interactions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/interactions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/interactions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxInteraction/index.js",
    "groupTitle": "Fax_Interactions"
  },
  {
    "type": "get",
    "url": "/api/fax/interactions/{id}/download",
    "title": "Get interactions",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/fax/interactions/{id}/download -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "download",
    "group": "Fax_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxInteraction/index.js",
    "groupTitle": "Fax_Interactions"
  },
  {
    "type": "get",
    "url": "/api/fax/messages/{id}/download",
    "title": "Get message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/fax/messages/{id}/download -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "download",
    "group": "Fax_Message",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxMessage/index.js",
    "groupTitle": "Fax_Message"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/reports/queue?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/reports/queue?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/reports/queue?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/reports/queue?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/reports/queue?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxQueue/index.js",
    "groupTitle": "Fax_Queues"
  },
  {
    "type": "post",
    "url": "/api/fax/reports/transfer",
    "title": "Creates a new Fax Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/fax/reports/transfer -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateFax_Transfer_Reports",
    "group": "Fax_Transfer_Reports",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "uniqueid",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"account\"",
              "\"agent\"",
              "\"queue\""
            ],
            "optional": false,
            "field": "type",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "transferredAt",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxTransferReport/index.js",
    "groupTitle": "Fax_Transfer_Reports"
  },
  {
    "type": "delete",
    "url": "/api/fax/reports/transfer/{id}",
    "title": "Deletes a Fax Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/fax/reports/transfer/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteFax_Transfer_Reports",
    "group": "Fax_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxTransferReport/index.js",
    "groupTitle": "Fax_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/fax/reports/transfer/describe",
    "title": "Gets table info about Fax Transfer Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/fax/reports/transfer/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeFax_Transfer_Reports",
    "group": "Fax_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxTransferReport/index.js",
    "groupTitle": "Fax_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/fax/reports/transfer",
    "title": "Gets a list of Fax Transfer Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/fax/reports/transfer -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetFax_Transfer_Reports",
    "group": "Fax_Transfer_Reports",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/fax/reports/transfer?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/fax/reports/transfer?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/fax/reports/transfer?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/fax/reports/transfer?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/fax/reports/transfer?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/faxTransferReport/index.js",
    "groupTitle": "Fax_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/fax/reports/transfer/{id}",
    "title": "Gets a single Fax Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/fax/reports/transfer/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowFax_Transfer_Reports",
    "group": "Fax_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxTransferReport/index.js",
    "groupTitle": "Fax_Transfer_Reports"
  },
  {
    "type": "put",
    "url": "/api/fax/reports/transfer/{id}",
    "title": "Update an existing Fax Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/fax/reports/transfer/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateFax_Transfer_Reports",
    "group": "Fax_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxTransferReport/index.js",
    "groupTitle": "Fax_Transfer_Reports"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/freshdesk/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/freshdesk/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/freshdesk/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/freshdesk/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/freshdesk/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/freshdesk/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/freshdesk/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/freshdesk/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/freshdesk/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/freshdesk/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/freshdesk/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/freshdesk/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/freshdesk/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/freshdesk/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/freshdesk/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshdeskField/index.js",
    "groupTitle": "Freshdesk_Fields"
  },
  {
    "type": "post",
    "url": "/api/integrations/freshsales/accounts",
    "title": "Creates a new Freshsales Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateFreshsales_Accounts",
    "group": "Freshsales_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesAccount/index.js",
    "groupTitle": "Freshsales_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/integrations/freshsales/accounts/{id}",
    "title": "Deletes a Freshsales Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/accounts/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteFreshsales_Accounts",
    "group": "Freshsales_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesAccount/index.js",
    "groupTitle": "Freshsales_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/freshsales/accounts",
    "title": "Gets a list of Freshsales Accounts",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/accounts -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetFreshsales_Accounts",
    "group": "Freshsales_Accounts",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/freshsales/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/freshsales/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/freshsales/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/freshsales/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/freshsales/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesAccount/index.js",
    "groupTitle": "Freshsales_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/freshsales/accounts/{id}",
    "title": "Gets a single Freshsales Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/accounts/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowFreshsales_Accounts",
    "group": "Freshsales_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesAccount/index.js",
    "groupTitle": "Freshsales_Accounts"
  },
  {
    "type": "post",
    "url": "/api/integrations/freshsales/accounts/{id}/configurations",
    "title": "Creates new configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addConfiguration",
    "group": "Freshsales_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesAccount/index.js",
    "groupTitle": "Freshsales_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/freshsales/accounts/{id}/configurations",
    "title": "Gets account configurations",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/accounts/{id}/configurations -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getConfigurations",
    "group": "Freshsales_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesAccount/index.js",
    "groupTitle": "Freshsales_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/freshsales/accounts/{id}/fields",
    "title": "Gets account fields",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/accounts/{id}/fields -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getFields",
    "group": "Freshsales_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesAccount/index.js",
    "groupTitle": "Freshsales_Accounts"
  },
  {
    "type": "put",
    "url": "/api/integrations/freshsales/accounts/{id}",
    "title": "Update an existing Freshsales Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateFreshsales_Accounts",
    "group": "Freshsales_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesAccount/index.js",
    "groupTitle": "Freshsales_Accounts"
  },
  {
    "type": "post",
    "url": "/api/integrations/freshsales/configurations",
    "title": "Creates a new Freshsales Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateFreshsales_Configurations",
    "group": "Freshsales_Configurations",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "name",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesConfiguration/index.js",
    "groupTitle": "Freshsales_Configurations"
  },
  {
    "type": "delete",
    "url": "/api/integrations/freshsales/configurations/{id}",
    "title": "Deletes a Freshsales Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/configurations/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteFreshsales_Configurations",
    "group": "Freshsales_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesConfiguration/index.js",
    "groupTitle": "Freshsales_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/freshsales/configurations",
    "title": "Gets a list of Freshsales Configurations",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/configurations -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetFreshsales_Configurations",
    "group": "Freshsales_Configurations",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/freshsales/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/freshsales/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/freshsales/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/freshsales/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/freshsales/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesConfiguration/index.js",
    "groupTitle": "Freshsales_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/freshsales/configurations/{id}",
    "title": "Gets a single Freshsales Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/configurations/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowFreshsales_Configurations",
    "group": "Freshsales_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesConfiguration/index.js",
    "groupTitle": "Freshsales_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/freshsales/configurations/{id}/descriptions",
    "title": "Gets configurations descriptions",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/configurations/{id}/descriptions -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getDescriptions",
    "group": "Freshsales_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesConfiguration/index.js",
    "groupTitle": "Freshsales_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/freshsales/configurations/{id}/fields",
    "title": "Gets configurations fields",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/configurations/{id}/fields -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getFields",
    "group": "Freshsales_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesConfiguration/index.js",
    "groupTitle": "Freshsales_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/freshsales/configurations/{id}/subjects",
    "title": "Gets configurations subjects",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/configurations/{id}/subjects -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getSubjects",
    "group": "Freshsales_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesConfiguration/index.js",
    "groupTitle": "Freshsales_Configurations"
  },
  {
    "type": "put",
    "url": "/api/integrations/freshsales/configurations/{id}",
    "title": "Update an existing Freshsales Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateFreshsales_Configurations",
    "group": "Freshsales_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesConfiguration/index.js",
    "groupTitle": "Freshsales_Configurations"
  },
  {
    "type": "post",
    "url": "/api/integrations/freshsales/fields",
    "title": "Creates a new Freshsales Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateFreshsales_Fields",
    "group": "Freshsales_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesField/index.js",
    "groupTitle": "Freshsales_Fields"
  },
  {
    "type": "delete",
    "url": "/api/integrations/freshsales/fields/{id}",
    "title": "Deletes a Freshsales Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/fields/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteFreshsales_Fields",
    "group": "Freshsales_Fields",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesField/index.js",
    "groupTitle": "Freshsales_Fields"
  },
  {
    "type": "get",
    "url": "/api/integrations/freshsales/fields",
    "title": "Gets a list of Freshsales Fields",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/fields -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetFreshsales_Fields",
    "group": "Freshsales_Fields",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/freshsales/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/freshsales/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/freshsales/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/freshsales/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/freshsales/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesField/index.js",
    "groupTitle": "Freshsales_Fields"
  },
  {
    "type": "get",
    "url": "/api/integrations/freshsales/fields/{id}",
    "title": "Gets a single Freshsales Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/fields/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowFreshsales_Fields",
    "group": "Freshsales_Fields",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesField/index.js",
    "groupTitle": "Freshsales_Fields"
  },
  {
    "type": "put",
    "url": "/api/integrations/freshsales/fields/{id}",
    "title": "Update an existing Freshsales Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/freshsales/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateFreshsales_Fields",
    "group": "Freshsales_Fields",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intFreshsalesField/index.js",
    "groupTitle": "Freshsales_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/campaign/index.js",
    "groupTitle": "IVR_Campaigns"
  },
  {
    "type": "post",
    "url": "/api/campaigns/clone",
    "title": "Clone an existing IVR Campaign",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/campaigns/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CloneIVR_Campaigns",
    "group": "IVR_Campaigns",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Active/Disactive Campaign</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "limitCalls",
            "description": "<p>Max 200 calls.</p>"
          },
          {
            "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": "<p>Originate Timeout Seconds (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialCongestionMaxRetry",
            "description": "<p>#Congestion Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialCongestionRetryFrequency",
            "description": "<p>Congestion Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialBusyMaxRetry",
            "description": "<p>#Busy Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialBusyRetryFrequency",
            "description": "<p>Busy Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialNoAnswerMaxRetry",
            "description": "<p>#NoAnswer Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialNoAnswerRetryFrequency",
            "description": "<p>NoAnswer Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialGlobalMaxRetry",
            "description": "<p>#Global Max Retry (min:1, max:999)</p>"
          },
          {
            "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": "<p>Active/Disactive AMD</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDInitialSilence",
            "description": "<p>#AMD Initial Silence</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDGreeting",
            "description": "<p>#AMD Greeting</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDAfterGreetingSilence",
            "description": "<p>#AMD After Greeting Silence</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDTotalAnalysisTime",
            "description": "<p>#AMD Total Analysis Time</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDMinWordLength",
            "description": "<p>#AMD Min Word Length</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDBetweenWordsSilence",
            "description": "<p>#AMD Between Words Silence</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDMaximumNumberOfWords",
            "description": "<p>#AMD Maximum Number Of Words</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDSilenceThreshold",
            "description": "<p>#AMD Silence Threshold (min:0, max:32767)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDMaximumWordLength",
            "description": "<p>#AMD Maximum Word Length</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"DESC\"",
              "\"ASC\""
            ],
            "optional": true,
            "field": "dialOrderByScheduledAt",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "dialPrefix",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialRandomLastDigitCallerIdNumber",
            "description": "<p>Random Last Digit (min:1, max:15)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialCutDigit",
            "description": "<p>Cut Digit (min:1, max:15)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialNoSuchNumberMaxRetry",
            "description": "<p>#NoSuchNumber Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialNoSuchNumberRetryFrequency",
            "description": "<p>NoSuchNumber Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialDropMaxRetry",
            "description": "<p>#Drop Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialDropRetryFrequency",
            "description": "<p>Drop Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAbandonedMaxRetry",
            "description": "<p>#Abandoned Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAbandonedRetryFrequency",
            "description": "<p>Abandoned Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialMachineMaxRetry",
            "description": "<p>#Machine Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialMachineRetryFrequency",
            "description": "<p>Machine Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAgentRejectMaxRetry",
            "description": "<p>#AgentReject Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAgentRejectRetryFrequency",
            "description": "<p>AgentReject Retry Frequency Minutes (min:1, max:99999)</p>"
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/campaigns?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/campaigns?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/campaigns?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/campaigns?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/campaigns?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/intervals?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/intervals?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/intervals?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/intervals?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/intervals?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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 -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addIntervals",
    "group": "Intervals",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/jscripty/answers/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/jscripty/answers/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/jscripty/answers/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/jscripty/answers/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/jscripty/answers/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/jscripty/questions/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/jscripty/questions/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/jscripty/questions/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/jscripty/questions/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/jscripty/questions/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/jscripty/sessions/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/jscripty/sessions/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/jscripty/sessions/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/jscripty/sessions/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/jscripty/sessions/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "sendUnpauseOnSubmit",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/jscripty/projects?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/jscripty/projects?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/jscripty/projects?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/jscripty/projects?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/jscripty/projects?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/license/index.js",
    "groupTitle": "License"
  },
  {
    "type": "put",
    "url": "/api/license/{id}",
    "title": "Update License Info",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/license/{id} -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "update",
    "group": "License",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/license/index.js",
    "groupTitle": "License"
  },
  {
    "type": "post",
    "url": "/api/mail/accounts/{id}/users",
    "title": "Add agents to a mail account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/mail/accounts/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddAgents",
    "group": "Mail_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailAccount/index.js",
    "groupTitle": "Mail_Accounts"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailAccount/index.js",
    "groupTitle": "Mail_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/mail/accounts/{id}",
    "title": "Deletes a mail account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/mail/accounts/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteMailAccounts",
    "group": "Mail_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/mailAccount/index.js",
    "groupTitle": "Mail_Accounts"
  },
  {
    "type": "get",
    "url": "/api/mail/accounts/{id}/users",
    "title": "Gets agents from mail account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/mail/accounts/{id}/users -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetAgents",
    "group": "Mail_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailAccount/index.js",
    "groupTitle": "Mail_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/mail/accounts/{id}/users",
    "title": "Removes agents from a mail account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/mail/accounts/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveAgents",
    "group": "Mail_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailAccount/index.js",
    "groupTitle": "Mail_Accounts"
  },
  {
    "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": "Mail_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailAccount/index.js",
    "groupTitle": "Mail_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/mail/accounts/{id}/dispositions",
    "title": "Removes dispositions from account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/mail/accounts/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveDispositions",
    "group": "Mail_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailAccount/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": ""
          },
          {
            "group": "Body",
            "type": "Virtual",
            "optional": true,
            "field": "name",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "optional": true,
            "field": "appdata",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interval",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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\"}' -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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "lastMsgBody",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "lastMsgText",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailAccount/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\" <[email-masked]>'}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "sendMail",
    "group": "Mail_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailApplication/index.js",
    "groupTitle": "Mail_Applications"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "lastMsgBody",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "lastMsgText",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/interactions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/interactions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/interactions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/interactions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/interactions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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\": \"[email-masked]\", \"...\": \"...\"}]' \\ \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": "Text",
            "optional": true,
            "field": "plainBody",
            "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": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "originTo",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "originCc",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailInteraction/index.js",
    "groupTitle": "Mail_Interactions"
  },
  {
    "type": "get",
    "url": "/api/mail/interactions/{id}/download",
    "title": "Gets interaction",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/mail/interactions/{id}/download -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "download",
    "group": "Mail_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailMessage/index.js",
    "groupTitle": "Mail_Messages"
  },
  {
    "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_Messages",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailMessage/index.js",
    "groupTitle": "Mail_Messages"
  },
  {
    "type": "get",
    "url": "/api/mail/messages/{id}/download",
    "title": "Gets message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/mail/messages/{id}/download -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "download",
    "group": "Mail_Messages",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailMessage/index.js",
    "groupTitle": "Mail_Messages"
  },
  {
    "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_Messages",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/reports/queue?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/reports/queue?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/reports/queue?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/reports/queue?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/reports/queue?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/out_servers?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/out_servers?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/out_servers?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/out_servers?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/out_servers?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/substatuses?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/substatuses?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/substatuses?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/substatuses?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/substatuses?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailSubstatus/index.js",
    "groupTitle": "Mail_Substatuses"
  },
  {
    "type": "post",
    "url": "/api/mail/reports/transfer",
    "title": "Creates a new Mail Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/mail/reports/transfer -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateMail_Transfer_Reports",
    "group": "Mail_Transfer_Reports",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "uniqueid",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"account\"",
              "\"agent\"",
              "\"queue\""
            ],
            "optional": false,
            "field": "type",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "transferredAt",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailTransferReport/index.js",
    "groupTitle": "Mail_Transfer_Reports"
  },
  {
    "type": "delete",
    "url": "/api/mail/reports/transfer/{id}",
    "title": "Deletes a Mail Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/mail/reports/transfer/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteMail_Transfer_Reports",
    "group": "Mail_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailTransferReport/index.js",
    "groupTitle": "Mail_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/mail/reports/transfer/describe",
    "title": "Gets table info about Mail Transfer Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/mail/reports/transfer/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeMail_Transfer_Reports",
    "group": "Mail_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailTransferReport/index.js",
    "groupTitle": "Mail_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/mail/reports/transfer",
    "title": "Gets a list of Mail Transfer Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/mail/reports/transfer -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetMail_Transfer_Reports",
    "group": "Mail_Transfer_Reports",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/mail/reports/transfer?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/mail/reports/transfer?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/mail/reports/transfer?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/mail/reports/transfer?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/mail/reports/transfer?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/mailTransferReport/index.js",
    "groupTitle": "Mail_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/mail/reports/transfer/{id}",
    "title": "Gets a single Mail Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/mail/reports/transfer/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowMail_Transfer_Reports",
    "group": "Mail_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailTransferReport/index.js",
    "groupTitle": "Mail_Transfer_Reports"
  },
  {
    "type": "put",
    "url": "/api/mail/reports/transfer/{id}",
    "title": "Update an existing Mail Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/mail/reports/transfer/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateMail_Transfer_Reports",
    "group": "Mail_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/mailTransferReport/index.js",
    "groupTitle": "Mail_Transfer_Reports"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/members/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/members/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/members/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/members/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/members/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/migrations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/migrations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/migrations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/migrations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/migrations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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 -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "Create",
    "group": "Networks",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/networks?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/networks?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/networks?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/networks?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/networks?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/network/index.js",
    "groupTitle": "Networks"
  },
  {
    "type": "post",
    "url": "/api/notifications",
    "title": "Send notification to user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/notifications -d '{\"text\": \"Hello!\", \"TemplateId\": 1}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "Send",
    "group": "Notifications",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/notification/index.js",
    "groupTitle": "Notifications"
  },
  {
    "type": "post",
    "url": "/api/openchannel/accounts/{id}/users",
    "title": "Add agents to a openchannel account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/openchannel/accounts/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddAgents",
    "group": "Openchannel_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelAccount/index.js",
    "groupTitle": "Openchannel_Accounts"
  },
  {
    "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": "token",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "replyUri",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "key",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "notificationTemplate",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "notificationSound",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "notificationShake",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "waitForTheAssignedAgent",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "mapKey",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "queueTransfer",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "queueTransferTimeout",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "agentTransfer",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "agentTransferTimeout",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "mandatoryDispositionPauseId",
            "description": "<p>Status to put when mandatory disposition is enabled</p>"
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "mandatoryDisposition",
            "description": "<p>Enabled/disables mandatory dispo on a queue</p>"
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelAccount/index.js",
    "groupTitle": "Openchannel_Accounts"
  },
  {
    "type": "get",
    "url": "/api/openchannel/accounts/{id}/users",
    "title": "Gets agents from openchannel account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/openchannel/accounts/{id}/users -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetAgents",
    "group": "Openchannel_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelAccount/index.js",
    "groupTitle": "Openchannel_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/openchannel/accounts/{id}/users",
    "title": "Removes agents from a openchannel account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/openchannel/accounts/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveAgents",
    "group": "Openchannel_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelAccount/index.js",
    "groupTitle": "Openchannel_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/openchannel/accounts/{id}/dispositions",
    "title": "Removes dispositions from account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/openchannel/accounts/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveDispositions",
    "group": "Openchannel_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": ""
          },
          {
            "group": "Body",
            "type": "Virtual",
            "optional": true,
            "field": "name",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "optional": true,
            "field": "appdata",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interval",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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\": \"vip\"}' -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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <p>Follow this link to check the documentation: <pre><a target=\"_blank\" href=\"https://wiki.xcallymotion.com/display/XMV/New+Channels+Configuration+Steps#NewChannelsConfigurationSteps-BuildyourownChannelservice\">https://wiki.xcallymotion.com/display/XMV/New+Channels+Configuration+Steps#NewChannelsConfigurationSteps-BuildyourownChannelservice</a></pre></p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelAccount/index.js",
    "groupTitle": "Openchannel_Accounts"
  },
  {
    "type": "post",
    "url": "/api/openchannel/accounts/{id}/send",
    "title": "Send new openchannel message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/openchannel/accounts/{id}/send -d '{from: 'John Doe', body: 'This is a test'}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "sendOpenchannel",
    "group": "Openchannel_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "optional": true,
            "field": "appdata",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interval",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/applications?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/applications?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/applications?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/applications?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/applications?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelApplication/index.js",
    "groupTitle": "Openchannel_Applications"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "from",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/interactions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/interactions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/interactions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/interactions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/interactions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelInteraction/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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelInteraction/index.js",
    "groupTitle": "Openchannel_Interactions"
  },
  {
    "type": "get",
    "url": "/api/openchannel/interactions/{id}/download",
    "title": "Gets interaction",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/openchannel/interactions/{id}/download -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "download",
    "group": "Openchannel_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/reports/queue?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/reports/queue?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/reports/queue?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/reports/queue?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/reports/queue?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelQueue/index.js",
    "groupTitle": "Openchannel_Queues"
  },
  {
    "type": "post",
    "url": "/api/openchannel/reports/transfer",
    "title": "Creates a new Openchannel Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/openchannel/reports/transfer -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateOpenchannel_Transfer_Reports",
    "group": "Openchannel_Transfer_Reports",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "uniqueid",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"account\"",
              "\"agent\"",
              "\"queue\""
            ],
            "optional": false,
            "field": "type",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "transferredAt",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelTransferReport/index.js",
    "groupTitle": "Openchannel_Transfer_Reports"
  },
  {
    "type": "delete",
    "url": "/api/openchannel/reports/transfer/{id}",
    "title": "Deletes a Openchannel Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/openchannel/reports/transfer/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteOpenchannel_Transfer_Reports",
    "group": "Openchannel_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelTransferReport/index.js",
    "groupTitle": "Openchannel_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/openchannel/reports/transfer/describe",
    "title": "Gets table info about Openchannel Transfer Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/openchannel/reports/transfer/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeOpenchannel_Transfer_Reports",
    "group": "Openchannel_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelTransferReport/index.js",
    "groupTitle": "Openchannel_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/openchannel/reports/transfer",
    "title": "Gets a list of Openchannel Transfer Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/openchannel/reports/transfer -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetOpenchannel_Transfer_Reports",
    "group": "Openchannel_Transfer_Reports",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/openchannel/reports/transfer?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/openchannel/reports/transfer?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/openchannel/reports/transfer?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/openchannel/reports/transfer?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/openchannel/reports/transfer?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelTransferReport/index.js",
    "groupTitle": "Openchannel_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/openchannel/reports/transfer/{id}",
    "title": "Gets a single Openchannel Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/openchannel/reports/transfer/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowOpenchannel_Transfer_Reports",
    "group": "Openchannel_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelTransferReport/index.js",
    "groupTitle": "Openchannel_Transfer_Reports"
  },
  {
    "type": "put",
    "url": "/api/openchannel/reports/transfer/{id}",
    "title": "Update an existing Openchannel Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/openchannel/reports/transfer/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateOpenchannel_Transfer_Reports",
    "group": "Openchannel_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelTransferReport/index.js",
    "groupTitle": "Openchannel_Transfer_Reports"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/pauses?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/pauses?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/pauses?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/pauses?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/pauses?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/pause/index.js",
    "groupTitle": "Pauses"
  },
  {
    "type": "get",
    "url": "/api/plugins",
    "title": "Gets a list of Plugins",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/plugins -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetPlugins",
    "group": "Plugins",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/plugins?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/plugins?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/plugins?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/plugins?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/plugins?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/plugin/index.js",
    "groupTitle": "Plugins"
  },
  {
    "type": "get",
    "url": "/api/plugins/{id}",
    "title": "Gets a single Plugin",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/plugins/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowPlugins",
    "group": "Plugins",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/plugin/index.js",
    "groupTitle": "Plugins"
  },
  {
    "type": "delete",
    "url": "/api/plugins/{id}",
    "title": "Delete a plugin",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/plugins/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "destroyPlugin",
    "group": "Plugins",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/plugin/index.js",
    "groupTitle": "Plugins"
  },
  {
    "type": "get",
    "url": "/api/plugins/{id}/download",
    "title": "Download plugin source code",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/plugins/{id}/download -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "download",
    "group": "Plugins",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/plugin/index.js",
    "groupTitle": "Plugins"
  },
  {
    "type": "put",
    "url": "/api/plugins/{id}",
    "title": "Update an existing plugin",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/plugins/{id} -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updatePlugin",
    "group": "Plugins",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/plugin/index.js",
    "groupTitle": "Plugins"
  },
  {
    "type": "post",
    "url": "/api/plugins",
    "title": "Upload new plugin",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/plugins -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "uploadPlugin",
    "group": "Plugins",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/plugin/index.js",
    "groupTitle": "Plugins"
  },
  {
    "type": "get",
    "url": "/api/plugins/webhook?hostname={host}&port={port}&encoding={encoding}&json={json}&path={path}",
    "title": "Redirect a plugin request to the specified path",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/plugins/webhook?port={port}&path={path} -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "webhookPlugin",
    "group": "Plugins",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/plugin/index.js",
    "groupTitle": "Plugins"
  },
  {
    "type": "post",
    "url": "/api/plugins/webhook?hostname={host}&port={port}&encoding={encoding}&json={json}&path={path}",
    "title": "Redirect a plugin request to the specified path",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/plugins/webhook?port={port}&path={path} -H 'Content-Type: application/json' -X POST",
        "type": "json"
      }
    ],
    "name": "webhookPlugin",
    "group": "Plugins",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/plugin/index.js",
    "groupTitle": "Plugins"
  },
  {
    "type": "delete",
    "url": "/api/pm2/{id}",
    "title": "Deletes an existing process",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/pm2/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeletePm2Process",
    "group": "Pm2",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/pm2/index.js",
    "groupTitle": "Pm2"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion returns the pm2 processes list.</p>",
    "version": "0.0.0",
    "filename": "server/api/pm2/index.js",
    "groupTitle": "Pm2"
  },
  {
    "type": "post",
    "url": "/api/pm2",
    "title": "Start a single pm2 process",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/pm2 -d '{\"name\": \"process_name\", \"script\": \"/index.js\"}'\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "StartPm2Process",
    "group": "Pm2",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "name",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "script",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "UpdatePm2Process",
    "group": "Pm2",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime campaigns parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime fax account parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return the current agent capacity.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime agents parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime chat queues parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime fax queues parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime mail account parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime mail queues parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime openchannel queues parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime outbound channels.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime sms queues parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of telephones parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime trunks parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime voice channel mixmonitor.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime voice channel stopmixmonitor.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime voice channels.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a specific realtime voice queue channel.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will hangup a specific realtime voice queue channel.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will redirect a specific realtime voice queue channel to a specific extension.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a specific preview contact.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime outbound parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime voice queues parameters.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime voice queues channels.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/rpc/index.js",
    "groupTitle": "RPC_Realtime"
  },
  {
    "type": "get",
    "url": "/api/rpc/chat/queues/{id}",
    "title": "Gets a single RTChatQueue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/rpc/chat/queues/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowRTChatQueues",
    "group": "RPC_Realtime",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/rpc/index.js",
    "groupTitle": "RPC_Realtime"
  },
  {
    "type": "get",
    "url": "/api/rpc/fax/queues/{id}",
    "title": "Gets a single RTFaxQueue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/rpc/fax/queues/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowRTFaxQueues",
    "group": "RPC_Realtime",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/rpc/index.js",
    "groupTitle": "RPC_Realtime"
  },
  {
    "type": "get",
    "url": "/api/rpc/mail/queues/{id}",
    "title": "Gets a single RTMailQueue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/rpc/mail/queues/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowRTMailQueues",
    "group": "RPC_Realtime",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/rpc/index.js",
    "groupTitle": "RPC_Realtime"
  },
  {
    "type": "get",
    "url": "/api/rpc/openchannel/queues/{id}",
    "title": "Gets a single RTOpenchannelQueue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/rpc/openchannel/queues/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowRTOpenchannelQueues",
    "group": "RPC_Realtime",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/rpc/index.js",
    "groupTitle": "RPC_Realtime"
  },
  {
    "type": "get",
    "url": "/api/rpc/sms/queues/{id}",
    "title": "Gets a single RTSmsQueue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/rpc/sms/queues/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowRTSmsQueues",
    "group": "RPC_Realtime",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/rpc/index.js",
    "groupTitle": "RPC_Realtime"
  },
  {
    "type": "get",
    "url": "/api/rpc/voice/queues/{id}",
    "title": "Gets a single RTVoiceQueue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/rpc/voice/queues/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowRTVoiceQueues",
    "group": "RPC_Realtime",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/rpc/index.js",
    "groupTitle": "RPC_Realtime"
  },
  {
    "type": "post",
    "url": "/api/rpc/agents/:id/notify",
    "title": "Notify message to a specific agent",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/rpc/agents/:id/notify -d '{\"messageId\": \"5080\", \"channel\": \"mail\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "agentNotify",
    "group": "RPC_Realtime",
    "description": "<p>Notify message to a specific agent.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/rpc/index.js",
    "groupTitle": "RPC_Realtime"
  },
  {
    "type": "post",
    "url": "/api/rpc/chat/queues/:id/notify",
    "title": "Notify message to a specific queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/rpc/chat/queues/:id/notify -d '{\"messageId\": \"5080\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "chatQueueNotify",
    "group": "RPC_Realtime",
    "description": "<p>Notify message to a specific queue.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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/chat/queues/waitinginteractions -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "chatQueuesWaitingInteractions",
    "group": "RPC_Realtime",
    "description": "<p>Motion will return a list of realtime waiting chat queues interctions.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/rpc/index.js",
    "groupTitle": "RPC_Realtime"
  },
  {
    "type": "post",
    "url": "/api/rpc/fax/queues/:id/notify",
    "title": "Notify message to a specific queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/rpc/fax/queues/:id/notify -d '{\"messageId\": \"5080\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "faxQueueNotify",
    "group": "RPC_Realtime",
    "description": "<p>Notify message to a specific queue.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime waiting fax queues interctions.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/rpc/index.js",
    "groupTitle": "RPC_Realtime"
  },
  {
    "type": "post",
    "url": "/api/rpc/mail/queues/:id/notify",
    "title": "Notify message to a specific queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/rpc/mail/queues/:id/notify -d '{\"messageId\": \"5080\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "mailQueueNotify",
    "group": "RPC_Realtime",
    "description": "<p>Notify message to a specific queue.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime waiting mail queues interctions.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/rpc/index.js",
    "groupTitle": "RPC_Realtime"
  },
  {
    "type": "post",
    "url": "/api/rpc/openchannel/queues/:id/notify",
    "title": "Notify message to a specific queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/rpc/openchannel/queues/:id/notify -d '{\"messageId\": \"5080\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "openchannelQueueNotify",
    "group": "RPC_Realtime",
    "description": "<p>Notify message to a specific queue.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime waiting openchannel queues interctions.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/rpc/index.js",
    "groupTitle": "RPC_Realtime"
  },
  {
    "type": "post",
    "url": "/api/rpc/sms/queues/:id/notify",
    "title": "Notify message to a specific queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/rpc/sms/queues/:id/notify -d '{\"messageId\": \"5080\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "smsQueueNotify",
    "group": "RPC_Realtime",
    "description": "<p>Notify message to a specific queue.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a list of realtime waiting sms queues interctions.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/salesforce/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/salesforce/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/salesforce/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/salesforce/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/salesforce/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": [
              "\"Task\"",
              "\"Case\""
            ],
            "optional": true,
            "field": "ticketType",
            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/salesforce/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/salesforce/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/salesforce/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/salesforce/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/salesforce/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/salesforce/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/salesforce/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/salesforce/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/salesforce/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/salesforce/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "cc",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "bcc",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "sendIfEmpty",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/schedules?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/schedules?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/schedules?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/schedules?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/schedules?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/schedule/index.js",
    "groupTitle": "Schedules"
  },
  {
    "type": "get",
    "url": "/api/schedules/{id}/run",
    "title": "Run Scheduler",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/schedules/{id}/run -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "run",
    "group": "Schedules",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/schedule/index.js",
    "groupTitle": "Schedules"
  },
  {
    "type": "post",
    "url": "/api/screen/recordings",
    "title": "Creates a new Recording",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/screen/recordings -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateRecordings",
    "group": "Screen_Recordings",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "Virtual",
            "optional": true,
            "field": "format",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interactionid",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "channel",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "value",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "rating",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "duration",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "startedAt",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "closedAt",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "createdAt",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "updatedAt",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/screenRecording/index.js",
    "groupTitle": "Screen_Recordings"
  },
  {
    "type": "get",
    "url": "/api/screen/recordings/describe",
    "title": "Gets table info about Recordings",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/screen/recordings/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeRecordings",
    "group": "Screen_Recordings",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/screenRecording/index.js",
    "groupTitle": "Screen_Recordings"
  },
  {
    "type": "get",
    "url": "/api/screen/recordings",
    "title": "Gets a list of Recordings",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/screen/recordings -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetRecordings",
    "group": "Screen_Recordings",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/screen/recordings?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/screen/recordings?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/screen/recordings?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/screen/recordings?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/screen/recordings?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/screenRecording/index.js",
    "groupTitle": "Screen_Recordings"
  },
  {
    "type": "get",
    "url": "/api/screen/recordings/{id}",
    "title": "Gets a single Recording",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/screen/recordings/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowRecordings",
    "group": "Screen_Recordings",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/screenRecording/index.js",
    "groupTitle": "Screen_Recordings"
  },
  {
    "type": "delete",
    "url": "/api/screen/recordings/{id}",
    "title": "Delete screen recording",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/screen/recordings/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "destroy",
    "group": "Screen_Recordings",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/screenRecording/index.js",
    "groupTitle": "Screen_Recordings"
  },
  {
    "type": "get",
    "url": "/api/screen/recordings/{id}/download",
    "title": "Download Recording",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/screen/recordings/{id}/download -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "download",
    "group": "Screen_Recordings",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/screenRecording/index.js",
    "groupTitle": "Screen_Recordings"
  },
  {
    "type": "put",
    "url": "/api/screen/recordings/{id}",
    "title": "Update an existing Recording",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/screen/recordings/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateRecordings",
    "group": "Screen_Recordings",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/screenRecording/index.js",
    "groupTitle": "Screen_Recordings"
  },
  {
    "type": "post",
    "url": "/api/integrations/servicenow/accounts",
    "title": "Creates a new Servicenow Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateServicenow_Accounts",
    "group": "Servicenow_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": "email",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "remoteUri",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "serverUrl",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowAccount/index.js",
    "groupTitle": "Servicenow_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/integrations/servicenow/accounts/{id}",
    "title": "Deletes a Servicenow Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/accounts/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteServicenow_Accounts",
    "group": "Servicenow_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowAccount/index.js",
    "groupTitle": "Servicenow_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/servicenow/accounts",
    "title": "Gets a list of Servicenow Accounts",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/accounts -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetServicenow_Accounts",
    "group": "Servicenow_Accounts",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/servicenow/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/servicenow/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/servicenow/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/servicenow/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/servicenow/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowAccount/index.js",
    "groupTitle": "Servicenow_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/servicenow/accounts/{id}",
    "title": "Gets a single Servicenow Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/accounts/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowServicenow_Accounts",
    "group": "Servicenow_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowAccount/index.js",
    "groupTitle": "Servicenow_Accounts"
  },
  {
    "type": "post",
    "url": "/api/integrations/servicenow/accounts/{id}/configurations",
    "title": "Creates new configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addConfiguration",
    "group": "Servicenow_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowAccount/index.js",
    "groupTitle": "Servicenow_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/servicenow/accounts/{id}/configurations",
    "title": "Gets account configurations",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/accounts/{id}/configurations -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getConfigurations",
    "group": "Servicenow_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowAccount/index.js",
    "groupTitle": "Servicenow_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/servicenow/accounts/{id}/fields",
    "title": "Gets account fields",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/accounts/{id}/fields -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getFields",
    "group": "Servicenow_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowAccount/index.js",
    "groupTitle": "Servicenow_Accounts"
  },
  {
    "type": "put",
    "url": "/api/integrations/servicenow/accounts/{id}",
    "title": "Update an existing Servicenow Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateServicenow_Accounts",
    "group": "Servicenow_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowAccount/index.js",
    "groupTitle": "Servicenow_Accounts"
  },
  {
    "type": "post",
    "url": "/api/integrations/servicenow/configurations",
    "title": "Creates a new Servicenow Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateServicenow_Configurations",
    "group": "Servicenow_Configurations",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "name",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowConfiguration/index.js",
    "groupTitle": "Servicenow_Configurations"
  },
  {
    "type": "delete",
    "url": "/api/integrations/servicenow/configurations/{id}",
    "title": "Deletes a Servicenow Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/configurations/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteServicenow_Configurations",
    "group": "Servicenow_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowConfiguration/index.js",
    "groupTitle": "Servicenow_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/servicenow/configurations",
    "title": "Gets a list of Servicenow Configurations",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/configurations -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetServicenow_Configurations",
    "group": "Servicenow_Configurations",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/servicenow/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/servicenow/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/servicenow/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/servicenow/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/servicenow/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowConfiguration/index.js",
    "groupTitle": "Servicenow_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/servicenow/configurations/{id}",
    "title": "Gets a single Servicenow Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/configurations/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowServicenow_Configurations",
    "group": "Servicenow_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowConfiguration/index.js",
    "groupTitle": "Servicenow_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/servicenow/configurations/{id}/descriptions",
    "title": "Gets configurations descriptions",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/configurations/{id}/descriptions -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getDescriptions",
    "group": "Servicenow_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowConfiguration/index.js",
    "groupTitle": "Servicenow_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/servicenow/configurations/{id}/fields",
    "title": "Gets configurations fields",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/configurations/{id}/fields -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getFields",
    "group": "Servicenow_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowConfiguration/index.js",
    "groupTitle": "Servicenow_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/servicenow/configurations/{id}/subjects",
    "title": "Gets configurations subjects",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/configurations/{id}/subjects -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getSubjects",
    "group": "Servicenow_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowConfiguration/index.js",
    "groupTitle": "Servicenow_Configurations"
  },
  {
    "type": "put",
    "url": "/api/integrations/servicenow/configurations/{id}",
    "title": "Update an existing Servicenow Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateServicenow_Configurations",
    "group": "Servicenow_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowConfiguration/index.js",
    "groupTitle": "Servicenow_Configurations"
  },
  {
    "type": "post",
    "url": "/api/integrations/servicenow/fields",
    "title": "Creates a new Servicenow Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateServicenow_Fields",
    "group": "Servicenow_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowField/index.js",
    "groupTitle": "Servicenow_Fields"
  },
  {
    "type": "delete",
    "url": "/api/integrations/servicenow/fields/{id}",
    "title": "Deletes a Servicenow Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/fields/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteServicenow_Fields",
    "group": "Servicenow_Fields",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowField/index.js",
    "groupTitle": "Servicenow_Fields"
  },
  {
    "type": "get",
    "url": "/api/integrations/servicenow/fields",
    "title": "Gets a list of Servicenow Fields",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/fields -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetServicenow_Fields",
    "group": "Servicenow_Fields",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/servicenow/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/servicenow/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/servicenow/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/servicenow/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/servicenow/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowField/index.js",
    "groupTitle": "Servicenow_Fields"
  },
  {
    "type": "get",
    "url": "/api/integrations/servicenow/fields/{id}",
    "title": "Gets a single Servicenow Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/fields/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowServicenow_Fields",
    "group": "Servicenow_Fields",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowField/index.js",
    "groupTitle": "Servicenow_Fields"
  },
  {
    "type": "put",
    "url": "/api/integrations/servicenow/fields/{id}",
    "title": "Update an existing Servicenow Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/servicenow/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateServicenow_Fields",
    "group": "Servicenow_Fields",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intServicenowField/index.js",
    "groupTitle": "Servicenow_Fields"
  },
  {
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/settings?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/settings?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/settings?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/settings?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/settings?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/setting/index.js",
    "groupTitle": "Settings"
  },
  {
    "type": "post",
    "url": "/api/settings/{id}/favicon",
    "title": "Add Favicon",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/settings/{id}/favicon -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addFavicon",
    "group": "Settings",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/setting/index.js",
    "groupTitle": "Settings"
  },
  {
    "type": "post",
    "url": "/api/settings/{id}/preferred",
    "title": "Add Preferred",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/settings/{id}/preferred -H 'Content-Type: multipart/form-data' -F 'file=@{filename}' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addPreferred",
    "group": "Settings",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/setting/index.js",
    "groupTitle": "Settings"
  },
  {
    "type": "get",
    "url": "/api/settings/{id}/favicon",
    "title": "Get Favicon",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/settings/{id}/favicon -v -X GET",
        "type": "json"
      }
    ],
    "name": "getFavicon",
    "group": "Settings",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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 -X GET",
        "type": "json"
      }
    ],
    "name": "getLogo",
    "group": "Settings",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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 -X GET",
        "type": "json"
      }
    ],
    "name": "getLogoLogin",
    "group": "Settings",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/setting/index.js",
    "groupTitle": "Settings"
  },
  {
    "type": "get",
    "url": "/api/settings/{id}/preferred",
    "title": "Get Preferred",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/settings/{id}/preferred -v -X GET",
        "type": "json"
      }
    ],
    "name": "getPreferred",
    "group": "Settings",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/setting/index.js",
    "groupTitle": "Settings"
  },
  {
    "type": "put",
    "url": "/api/settings/{id}",
    "title": "Update an existing Setting",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/settings/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateSettings",
    "group": "Settings",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/setting/index.js",
    "groupTitle": "Settings"
  },
  {
    "type": "post",
    "url": "/api/sms/accounts/{id}/users",
    "title": "Add agents to a sms account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/sms/accounts/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddAgents",
    "group": "Sms_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/smsAccount/index.js",
    "groupTitle": "Sms_Accounts"
  },
  {
    "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\"",
              "\"clickatell\"",
              "\"csc\"",
              "\"infobip\"",
              "\"intelepeer\""
            ],
            "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": [
              "\"SI\"",
              "\"TI\"",
              "\"GP\""
            ],
            "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": "apiKey",
            "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": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "notificationTemplate",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "notificationSound",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "notificationShake",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "waitForTheAssignedAgent",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "queueTransfer",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "queueTransferTimeout",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "agentTransfer",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "agentTransferTimeout",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "baseUrl",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "mandatoryDispositionPauseId",
            "description": "<p>Status to put when mandatory disposition is enabled</p>"
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "mandatoryDisposition",
            "description": "<p>Enabled/disables mandatory dispo on a queue</p>"
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/smsAccount/index.js",
    "groupTitle": "Sms_Accounts"
  },
  {
    "type": "get",
    "url": "/api/sms/accounts/{id}/users",
    "title": "Gets agents from sms account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/sms/accounts/{id}/users -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetAgents",
    "group": "Sms_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/smsAccount/index.js",
    "groupTitle": "Sms_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/sms/accounts/{id}/users",
    "title": "Removes agents from a sms account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/sms/accounts/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveAgents",
    "group": "Sms_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/smsAccount/index.js",
    "groupTitle": "Sms_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/sms/accounts/{id}/dispositions",
    "title": "Removes dispositions from account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/sms/accounts/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveDispositions",
    "group": "Sms_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": ""
          },
          {
            "group": "Body",
            "type": "Virtual",
            "optional": true,
            "field": "name",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "optional": true,
            "field": "appdata",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interval",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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\": \"vip\"}' -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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <p>This API is used to create a new sms message to be sent to the system.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/smsMessage/index.js",
    "groupTitle": "Sms_Accounts"
  },
  {
    "type": "get",
    "url": "/api/sms/accounts/{id}/status",
    "title": "Receive message status as get request",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/sms/accounts/{id}/status -H 'Content-Type: application/json' -v -X GET",
        "type": "json"
      }
    ],
    "name": "statusMessage",
    "group": "Sms_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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 -H 'Content-Type: application/json' -v -X POST",
        "type": "json"
      }
    ],
    "name": "statusMessage",
    "group": "Sms_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "optional": true,
            "field": "appdata",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interval",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/applications?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/applications?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/applications?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/applications?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/applications?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/smsApplication/index.js",
    "groupTitle": "Sms_Applications"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/interactions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/interactions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/interactions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/interactions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/interactions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/smsInteraction/index.js",
    "groupTitle": "Sms_Interactions"
  },
  {
    "type": "get",
    "url": "/api/sms/interactions/{id}/download",
    "title": "Gets interaction",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/sms/interactions/{id}/download -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "download",
    "group": "Sms_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/reports/queue?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/reports/queue?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/reports/queue?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/reports/queue?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/reports/queue?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/smsQueue/index.js",
    "groupTitle": "Sms_Queues"
  },
  {
    "type": "post",
    "url": "/api/sms/reports/transfer",
    "title": "Creates a new Sms Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/sms/reports/transfer -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateSms_Transfer_Reports",
    "group": "Sms_Transfer_Reports",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "uniqueid",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"account\"",
              "\"agent\"",
              "\"queue\""
            ],
            "optional": false,
            "field": "type",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "transferredAt",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/smsTransferReport/index.js",
    "groupTitle": "Sms_Transfer_Reports"
  },
  {
    "type": "delete",
    "url": "/api/sms/reports/transfer/{id}",
    "title": "Deletes a Sms Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/sms/reports/transfer/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteSms_Transfer_Reports",
    "group": "Sms_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/smsTransferReport/index.js",
    "groupTitle": "Sms_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/sms/reports/transfer/describe",
    "title": "Gets table info about Sms Transfer Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/sms/reports/transfer/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeSms_Transfer_Reports",
    "group": "Sms_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/smsTransferReport/index.js",
    "groupTitle": "Sms_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/sms/reports/transfer",
    "title": "Gets a list of Sms Transfer Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/sms/reports/transfer -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetSms_Transfer_Reports",
    "group": "Sms_Transfer_Reports",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sms/reports/transfer?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sms/reports/transfer?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sms/reports/transfer?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sms/reports/transfer?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sms/reports/transfer?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/smsTransferReport/index.js",
    "groupTitle": "Sms_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/sms/reports/transfer/{id}",
    "title": "Gets a single Sms Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/sms/reports/transfer/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowSms_Transfer_Reports",
    "group": "Sms_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/smsTransferReport/index.js",
    "groupTitle": "Sms_Transfer_Reports"
  },
  {
    "type": "put",
    "url": "/api/sms/reports/transfer/{id}",
    "title": "Update an existing Sms Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/sms/reports/transfer/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateSms_Transfer_Reports",
    "group": "Sms_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/smsTransferReport/index.js",
    "groupTitle": "Sms_Transfer_Reports"
  },
  {
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/sounds?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/sounds?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/sounds?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/sounds?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/sounds?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/square/details/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/square/details/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/square/details/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/square/details/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/square/details/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/squareReportDetail/index.js",
    "groupTitle": "Square_Details_Reports"
  },
  {
    "type": "post",
    "url": "/api/square/messages",
    "title": "Creates a new Message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/square/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateMessages",
    "group": "Square_Messages",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "uniqueid",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": false,
            "field": "body",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"in\"",
              "\"out\""
            ],
            "optional": false,
            "field": "direction",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/squareMessage/index.js",
    "groupTitle": "Square_Messages"
  },
  {
    "type": "delete",
    "url": "/api/square/messages/{id}",
    "title": "Deletes a Message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/square/messages/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteMessages",
    "group": "Square_Messages",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/squareMessage/index.js",
    "groupTitle": "Square_Messages"
  },
  {
    "type": "get",
    "url": "/api/square/messages",
    "title": "Gets a list of Messages",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/square/messages -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetMessages",
    "group": "Square_Messages",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/square/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/square/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/square/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/square/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/square/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/squareMessage/index.js",
    "groupTitle": "Square_Messages"
  },
  {
    "type": "get",
    "url": "/api/square/messages/{id}",
    "title": "Gets a single Message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/square/messages/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowMessages",
    "group": "Square_Messages",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/squareMessage/index.js",
    "groupTitle": "Square_Messages"
  },
  {
    "type": "put",
    "url": "/api/square/messages/{id}",
    "title": "Update an existing Message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/square/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateMessages",
    "group": "Square_Messages",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/squareMessage/index.js",
    "groupTitle": "Square_Messages"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/square/odbc?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/square/odbc?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/square/odbc?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/square/odbc?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/square/odbc?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/square/projects?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/square/projects?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/square/projects?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/square/projects?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/square/projects?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/squareProject/index.js",
    "groupTitle": "Square_Projects"
  },
  {
    "type": "post",
    "url": "/api/square/projects/{id}/users",
    "title": "Adds user permissions to a Project",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/square/projects/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addUsers",
    "group": "Square_Projects",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/squareProject/index.js",
    "groupTitle": "Square_Projects"
  },
  {
    "type": "get",
    "url": "/api/square/projects/{id}/users",
    "title": "Gets users permissions from Project",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/square/projects/{id}/users -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getUsers",
    "group": "Square_Projects",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/squareProject/index.js",
    "groupTitle": "Square_Projects"
  },
  {
    "type": "delete",
    "url": "/api/square/projects/{id}/users",
    "title": "Removes user permissions from a Project",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/square/projects/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "removeUsers",
    "group": "Square_Projects",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": ""
          },
          {
            "group": "Body",
            "type": "Virtual",
            "optional": true,
            "field": "format",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/square/recordings?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/square/recordings?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/square/recordings?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/square/recordings?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/square/recordings?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/squareRecording/index.js",
    "groupTitle": "Square_Recordings"
  },
  {
    "type": "delete",
    "url": "/api/square/recordings/{id}/delete",
    "title": "Delete recording",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/square/recordings/{id}/delete -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "destroy",
    "group": "Square_Recordings",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "bot",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/square/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/square/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/square/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/square/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/square/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/sugarcrm/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/sugarcrm/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/sugarcrm/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/sugarcrm/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/sugarcrm/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/sugarcrm/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/sugarcrm/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/sugarcrm/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/sugarcrm/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/sugarcrm/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/sugarcrm/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/sugarcrm/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/sugarcrm/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/sugarcrm/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/sugarcrm/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intSugarcrmField/index.js",
    "groupTitle": "Sugarcrm_Fields"
  },
  {
    "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": "<p>Motion returns the system information.</p>",
    "version": "0.0.0",
    "filename": "server/api/system/index.js",
    "groupTitle": "System_Information"
  },
  {
    "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": "<p>Motion returns the system information.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/tags?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/tags?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/tags?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/tags?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/tags?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/teams?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/teams?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/teams?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/teams?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/teams?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/team/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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/openchannelQueue/index.js",
    "groupTitle": "Teams"
  },
  {
    "type": "delete",
    "url": "/api/whatsapp/queues/{id}/teams",
    "title": "Remove teams from a queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/queues/{id}/teams -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveTeams",
    "group": "Teams",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueue/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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/smsQueue/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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voiceQueue/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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/chatQueue/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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/faxQueue/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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/templates?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/templates?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/templates?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/templates?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/templates?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/triggers?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/triggers?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/triggers?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/triggers?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/triggers?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Allowed values: contactManager, integration, motionbar, jscripty, urlForward, browser, bot, script</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "data1",
            "description": "<p>contactManager[ListId], integration[intName(zendesk)], motionbar[Popup(0),URL(1),WinApp(2)], urlForward[GET,POST], browser[TemplateId(0),URL(1)]</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "data2",
            "description": "<p>integration[AccountId], motionbar[TemplateId,URL,WinAppPath], urlForward[URL]</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "data3",
            "description": "<p>motionbar[NULL,NULL,WinAppArguments]</p>"
          },
          {
            "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": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "data7",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/trigger/index.js",
    "groupTitle": "Triggers"
  },
  {
    "type": "post",
    "url": "/api/trunks/clone",
    "title": "Clone an existing Trunk",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/trunks/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CloneTrunks",
    "group": "Trunks",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/trunk/index.js",
    "groupTitle": "Trunks"
  },
  {
    "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": "<p>String is deprecated. Please use an Array as [&quot;udp&quot;, &quot;tcp&quot;]</p>"
          },
          {
            "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": "<p>String is deprecated. Please use an Array as [&quot;force_rport&quot;, &quot;comedia&quot;]</p>"
          },
          {
            "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": "<p>String is deprecated. Please use an Array as [&quot;ulaw&quot;, &quot;alaw&quot;, &quot;alaw&quot;]</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"yes\"",
              "\"no\""
            ],
            "optional": true,
            "field": "autoframing",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "insecure",
            "description": "<p>String is deprecated. Please use an Array as [&quot;port&quot;, &quot;invite&quot;]</p>"
          },
          {
            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/trunks?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/trunks?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/trunks?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/trunks?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/trunks?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/trunk/index.js",
    "groupTitle": "Trunks"
  },
  {
    "type": "post",
    "url": "/api/userProfile/resources",
    "title": "Creates a new User Profile Resource",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfile/resources -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateUser_Profile_Resources",
    "group": "User_Profile_Resources",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "name",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": false,
            "field": "resourceId",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "type",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfileResource/index.js",
    "groupTitle": "User_Profile_Resources"
  },
  {
    "type": "delete",
    "url": "/api/userProfile/resources/{id}",
    "title": "Deletes a User Profile Resource",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfile/resources/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteUser_Profile_Resources",
    "group": "User_Profile_Resources",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfileResource/index.js",
    "groupTitle": "User_Profile_Resources"
  },
  {
    "type": "get",
    "url": "/api/userProfile/resources/describe",
    "title": "Gets table info about User Profile Resources",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfile/resources/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeUser_Profile_Resources",
    "group": "User_Profile_Resources",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfileResource/index.js",
    "groupTitle": "User_Profile_Resources"
  },
  {
    "type": "get",
    "url": "/api/userProfile/resources",
    "title": "Gets a list of User Profile Resources",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfile/resources -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetUser_Profile_Resources",
    "group": "User_Profile_Resources",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/userProfile/resources?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/userProfile/resources?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/userProfile/resources?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/userProfile/resources?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/userProfile/resources?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/userProfileResource/index.js",
    "groupTitle": "User_Profile_Resources"
  },
  {
    "type": "get",
    "url": "/api/userProfile/resources/{id}",
    "title": "Gets a single User Profile Resource",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfile/resources/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowUser_Profile_Resources",
    "group": "User_Profile_Resources",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfileResource/index.js",
    "groupTitle": "User_Profile_Resources"
  },
  {
    "type": "put",
    "url": "/api/userProfile/resources/{id}",
    "title": "Update an existing User Profile Resource",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfile/resources/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateUser_Profile_Resources",
    "group": "User_Profile_Resources",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfileResource/index.js",
    "groupTitle": "User_Profile_Resources"
  },
  {
    "type": "post",
    "url": "/api/userProfile/sections",
    "title": "Creates a new User Profile Section",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfile/sections -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateUser_Profile_Sections",
    "group": "User_Profile_Sections",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "name",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "category",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": false,
            "field": "sectionId",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "enabled",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "autoAssociation",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "crudPermissions",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfileSection/index.js",
    "groupTitle": "User_Profile_Sections"
  },
  {
    "type": "delete",
    "url": "/api/userProfile/sections/{id}",
    "title": "Deletes a User Profile Section",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfile/sections/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteUser_Profile_Sections",
    "group": "User_Profile_Sections",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfileSection/index.js",
    "groupTitle": "User_Profile_Sections"
  },
  {
    "type": "get",
    "url": "/api/userProfile/sections/describe",
    "title": "Gets table info about User Profile Sections",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfile/sections/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeUser_Profile_Sections",
    "group": "User_Profile_Sections",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfileSection/index.js",
    "groupTitle": "User_Profile_Sections"
  },
  {
    "type": "get",
    "url": "/api/userProfile/sections",
    "title": "Gets a list of User Profile Sections",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfile/sections -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetUser_Profile_Sections",
    "group": "User_Profile_Sections",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/userProfile/sections?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/userProfile/sections?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/userProfile/sections?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/userProfile/sections?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/userProfile/sections?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/userProfileSection/index.js",
    "groupTitle": "User_Profile_Sections"
  },
  {
    "type": "get",
    "url": "/api/userProfile/sections/{id}",
    "title": "Gets a single User Profile Section",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfile/sections/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowUser_Profile_Sections",
    "group": "User_Profile_Sections",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfileSection/index.js",
    "groupTitle": "User_Profile_Sections"
  },
  {
    "type": "put",
    "url": "/api/userProfile/sections/{id}",
    "title": "Update an existing User Profile Section",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfile/sections/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateUser_Profile_Sections",
    "group": "User_Profile_Sections",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfileSection/index.js",
    "groupTitle": "User_Profile_Sections"
  },
  {
    "type": "post",
    "url": "/api/userProfiles/{id}/resources",
    "title": "Add resources' permissions to User Profile",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfiles/{id}/resources -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddResources",
    "group": "User_Profiles",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfile/index.js",
    "groupTitle": "User_Profiles"
  },
  {
    "type": "post",
    "url": "/api/userProfiles/{id}/sections",
    "title": "Add sections' permissions to User Profile",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfiles/{id}/sections -d '[{\"sectionId\": \"name\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddSections",
    "group": "User_Profiles",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfile/index.js",
    "groupTitle": "User_Profiles"
  },
  {
    "type": "post",
    "url": "/api/userProfiles/clone",
    "title": "Clone an existing User Profile",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfiles/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CloneUser_Profiles",
    "group": "User_Profiles",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfile/index.js",
    "groupTitle": "User_Profiles"
  },
  {
    "type": "post",
    "url": "/api/userProfiles",
    "title": "Creates a new User Profile",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfiles -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateUser_Profiles",
    "group": "User_Profiles",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "name",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "crudPermissions",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfile/index.js",
    "groupTitle": "User_Profiles"
  },
  {
    "type": "delete",
    "url": "/api/userProfiles/{id}",
    "title": "Deletes a User Profile",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfiles/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteUser_Profiles",
    "group": "User_Profiles",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfile/index.js",
    "groupTitle": "User_Profiles"
  },
  {
    "type": "get",
    "url": "/api/userProfiles/describe",
    "title": "Gets table info about User Profiles",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfiles/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeUser_Profiles",
    "group": "User_Profiles",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfile/index.js",
    "groupTitle": "User_Profiles"
  },
  {
    "type": "get",
    "url": "/api/userProfiles/{id}/resources?section={section}",
    "title": "Get Resources assigned to a Section",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfiles/{id}/resources?section={section} -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetResources",
    "group": "User_Profiles",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfile/index.js",
    "groupTitle": "User_Profiles"
  },
  {
    "type": "get",
    "url": "/api/userProfiles/{id}/sections",
    "title": "Get sections associated to a User Profile",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfiles/{id}/sections -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetSections",
    "group": "User_Profiles",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfile/index.js",
    "groupTitle": "User_Profiles"
  },
  {
    "type": "get",
    "url": "/api/userProfiles",
    "title": "Gets a list of User Profiles",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfiles -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetUser_Profiles",
    "group": "User_Profiles",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/userProfiles?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/userProfiles?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/userProfiles?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/userProfiles?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/userProfiles?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/userProfile/index.js",
    "groupTitle": "User_Profiles"
  },
  {
    "type": "delete",
    "url": "/api/userProfiles/{id}/resources",
    "title": "Removes resources' permissions from User Profile",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfiles/{id}/resources?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveResources",
    "group": "User_Profiles",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfile/index.js",
    "groupTitle": "User_Profiles"
  },
  {
    "type": "delete",
    "url": "/api/userProfiles/{id}/sections",
    "title": "Removes sections' permissions from User Profile",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfiles/{id}/sections?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveSections",
    "group": "User_Profiles",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfile/index.js",
    "groupTitle": "User_Profiles"
  },
  {
    "type": "get",
    "url": "/api/userProfiles/{id}",
    "title": "Gets a single User Profile",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfiles/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowUser_Profiles",
    "group": "User_Profiles",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfile/index.js",
    "groupTitle": "User_Profiles"
  },
  {
    "type": "put",
    "url": "/api/userProfiles/{id}",
    "title": "Update an existing User Profile",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/userProfiles/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateUser_Profiles",
    "group": "User_Profiles",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/userProfile/index.js",
    "groupTitle": "User_Profiles"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/chat_interactions",
    "title": "Add chat interaction tabs to an agent",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/chat_interactions -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddChatInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/chat_websites",
    "title": "Add a Chat Website to a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/chat_websites -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddChatWebsites",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/fax_accounts",
    "title": "Add a Fax Account to a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/fax_accounts -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddFaxAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/fax_interactions",
    "title": "Add fax interaction tabs to an agent",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/fax_interactions -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddFaxInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/mail_accounts",
    "title": "Add a Mail Account to a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/mail_accounts -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddMailAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/mail_interactions",
    "title": "Add mail interaction tabs to an agent",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/mail_interactions -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddMailInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/openchannel_accounts",
    "title": "Add a Open Channel Account to a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/openchannel_accounts -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddOpenchannelAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/openchannel_interactions",
    "title": "Add openchannel interaction tabs to an agent",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/openchannel_interactions -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddOpenchannelInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/sms_accounts",
    "title": "Add a Sms Account to a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/sms_accounts -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddSmsAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/sms_interactions",
    "title": "Add sms interaction tabs to an agent",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/sms_interactions -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddSmsInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/square_projects",
    "title": "Add a Square Project to a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/square_projects -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddSquareProjects",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/whatsapp_accounts",
    "title": "Add a Whatsapp Account to a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/whatsapp_accounts -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddWhatsappAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/whatsapp_interactions",
    "title": "Add Whatsapp interaction tabs to an agent",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/whatsapp_interactions -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddWhatsappInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>The name of the user</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "fullname",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "alias",
            "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": "whatsappPause",
            "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": "whatsappCapacity",
            "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": "<p>String is deprecated. Please use an Array as [&quot;udp&quot;, &quot;tcp&quot;]</p>"
          },
          {
            "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": "<p>String is deprecated. Please use an Array as [&quot;force_rport&quot;, &quot;comedia&quot;]</p>"
          },
          {
            "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": "<p>String is deprecated. Please use an Array as [&quot;ulaw&quot;, &quot;alaw&quot;, &quot;gsm&quot;]</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"yes\"",
              "\"no\""
            ],
            "optional": true,
            "field": "autoframing",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "insecure",
            "description": "<p>String is deprecated. Please use an Array as [&quot;port&quot;, &quot;invite&quot;]</p>"
          },
          {
            "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": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "phoneBarEnableJaws",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "phoneBarEnableScreenRecordingByAgent",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Virtual",
            "optional": true,
            "field": "phoneBarEnableVideoRecording",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "phoneBarEnableAutomaticScreenRecording",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "phoneBarPrefixRequired",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "hotdesk",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interface",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "privacyEnabled",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "apiKeyNonce",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "apiKeyIat",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "screenrecording",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "blocked",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "blockedAt",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "loginAttempts",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "disabled",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "post",
    "url": "/api/users/{id}/api_key",
    "title": "Create a new API access key for the user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/:id/api_key -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateApiKey",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X GET",
        "type": "json"
      }
    ],
    "name": "GetAgents",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "get",
    "url": "/api/users/{id}/api_key",
    "title": "Get the API access key for the user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/:id/api_key -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetApiKey",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X GET",
        "type": "json"
      }
    ],
    "name": "GetChatGroups",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X GET",
        "type": "json"
      }
    ],
    "name": "GetChatInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "get",
    "url": "/api/users/{id}/chat_websites",
    "title": "GetChatWebsites",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/chat_websites -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetChatWebsites",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X GET",
        "type": "json"
      }
    ],
    "name": "GetContacts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "get",
    "url": "/api/users/{id}/fax_accounts",
    "title": "GetFaxAccounts",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/fax_accounts -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetFaxAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X GET",
        "type": "json"
      }
    ],
    "name": "GetFaxInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X GET",
        "type": "json"
      }
    ],
    "name": "GetLists",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "get",
    "url": "/api/users/{id}/mail_accounts",
    "title": "GetMailAccounts",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/mail_accounts -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetMailAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X GET",
        "type": "json"
      }
    ],
    "name": "GetMailInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "get",
    "url": "/api/users/{id}/openchannel_accounts",
    "title": "GetOpenchannelAccounts",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/openchannel_accounts -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetOpenchannelAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "get",
    "url": "/api/users/{id}/prefixes",
    "title": "GetPrefixes",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/prefixes -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetPrefixes",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X GET",
        "type": "json"
      }
    ],
    "name": "GetQueues",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X GET",
        "type": "json"
      }
    ],
    "name": "GetRecordings",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "get",
    "url": "/api/users/{id}/scheduled_calls",
    "title": "GetScheduledCalls",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/scheduled_calls -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetScheduledCalls",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "get",
    "url": "/api/users/{id}/screen_recordings",
    "title": "GetScreenRecordings",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/screen_recordings -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetScreenRecordings",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "get",
    "url": "/api/users/{id}/sms_accounts",
    "title": "GetSmsAccounts",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/sms_accounts -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetSmsAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X GET",
        "type": "json"
      }
    ],
    "name": "GetSmsInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "get",
    "url": "/api/users/{id}/square_projects",
    "title": "GetSquareProjects",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/square_projects -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetSquareProjects",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X GET",
        "type": "json"
      }
    ],
    "name": "GetTeams",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/users?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/users?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/users?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/users?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/users?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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} -X GET",
        "type": "json"
      }
    ],
    "name": "GetVoiceQueuesRt",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "get",
    "url": "/api/users/{id}/whatsapp_accounts",
    "title": "GetWhatsappAccounts",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/whatsapp_accounts -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetWhatsappAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "get",
    "url": "/api/users/{id}/whatsapp/interactions",
    "title": "GetWhatsappInteractions",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/whatsapp/interactions -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetWhatsappInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X POST",
        "type": "json"
      }
    ],
    "name": "Login",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X POST",
        "type": "json"
      }
    ],
    "name": "Logout",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X POST",
        "type": "json"
      }
    ],
    "name": "Pause",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/api_key",
    "title": "Remove API access key for the user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/:id/api_key -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveApiKey",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/chat_interactions",
    "title": "Removes interactions from an agent",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/chat_interactions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveChatInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/chat_websites",
    "title": "Removes a Chat Website from a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/chat_websites?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveChatWebsites",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/fax_accounts",
    "title": "Removes a Fax Account from a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/fax_accounts?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveFaxAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/fax_interactions",
    "title": "Removes interactions from an agent",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/fax_interactions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveFaxInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/mail_accounts",
    "title": "Removes a Mail Account from a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/mail_accounts?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveMailAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/mail_interactions",
    "title": "Removes interactions from an agent",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/mail_interactions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveMailInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/openchannel_accounts",
    "title": "Removes a Open Channel Account from a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/openchannel_accounts?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveOpenchannelAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/openchannel_interactions",
    "title": "Removes openchannel interactions from an agent",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/openchannel_interactions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveOpenchannelInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/sms_accounts",
    "title": "Removes a Sms Account from a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/sms_accounts?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveSmsAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/sms_interactions",
    "title": "Removes interactions from an agent",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/sms_interactions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveSmsInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/square_projects",
    "title": "Removes a Square Project from a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/square_projects?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveSquareProjects",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/whatsapp_accounts",
    "title": "Removes a Whatsapp Account from a user",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/whatsapp_accounts?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveWhatsappAccounts",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "delete",
    "url": "/api/users/{id}/whatsapp_interactions",
    "title": "Removes Whatsapp interactions from an agent",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/{id}/whatsapp_interactions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveWhatsappInteractions",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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} -X POST",
        "type": "json"
      }
    ],
    "name": "Unpause",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/user/index.js",
    "groupTitle": "Users"
  },
  {
    "type": "get",
    "url": "/api/users/whoami",
    "title": "WhoAmI",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/users/whoami -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "WhoAmI",
    "group": "Users",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/variables?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/variables?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/variables?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/variables?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/variables?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion run the following command: git fetch origin master</p>",
    "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": "<p>Motion returns the current and latest motion version.</p>",
    "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": "<p>Motion launch the database migrations, according to the application version</p>",
    "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": "<p>Motion run the following command: git pull</p>",
    "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": "<p>Motion run the following command: git reset --hard FETCH_HEAD</p>",
    "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": "<p>Motion run the following command: pm2 restart motion</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/agents/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/agents/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/agents/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/agents/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/agents/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/calls/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/calls/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/calls/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/calls/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/calls/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/chanspy?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/chanspy?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/chanspy?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/chanspy?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/chanspy?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/contexts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/contexts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/contexts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/contexts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/contexts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/dials/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/dials/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/dials/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/dials/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/dials/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voiceDialReport/index.js",
    "groupTitle": "Voice_Dial_Reports"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/extensions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/extensions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/extensions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/extensions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/extensions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/mohs?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/mohs?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/mohs?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/mohs?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/mohs?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Integer",
            "optional": false,
            "field": "maxsecs",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": false,
            "field": "maxmsg",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Virtual",
            "optional": true,
            "field": "name",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/mails?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/mails?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/mails?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/mails?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/mails?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/mails/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/mails/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/mails/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/mails/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/mails/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voiceMailMessage/index.js",
    "groupTitle": "Voice_Messages"
  },
  {
    "type": "post",
    "url": "/api/voice/prefixes/{id}/users",
    "title": "Add agents to a prefix",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/prefixes/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddAgents",
    "group": "Voice_Prefixes",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voicePrefix/index.js",
    "groupTitle": "Voice_Prefixes"
  },
  {
    "type": "delete",
    "url": "/api/voice/prefixes/{id}",
    "title": "Deletes a Prefix",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/prefixes/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeletePrefixes",
    "group": "Voice_Prefixes",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voicePrefix/index.js",
    "groupTitle": "Voice_Prefixes"
  },
  {
    "type": "get",
    "url": "/api/voice/prefixes/describe",
    "title": "Gets table info about Prefixes",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/prefixes/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribePrefixes",
    "group": "Voice_Prefixes",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voicePrefix/index.js",
    "groupTitle": "Voice_Prefixes"
  },
  {
    "type": "get",
    "url": "/api/voice/prefixes/{id}/users",
    "title": "Gets agents from prefix",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/prefixes/{id}/users -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetAgents",
    "group": "Voice_Prefixes",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voicePrefix/index.js",
    "groupTitle": "Voice_Prefixes"
  },
  {
    "type": "get",
    "url": "/api/voice/prefixes",
    "title": "Gets a list of Prefixes",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/prefixes -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetPrefixes",
    "group": "Voice_Prefixes",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/prefixes?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/prefixes?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/prefixes?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/prefixes?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/prefixes?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/voicePrefix/index.js",
    "groupTitle": "Voice_Prefixes"
  },
  {
    "type": "delete",
    "url": "/api/voice/prefixes/{id}/users",
    "title": "Removes agents from a prefix",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/prefixes/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveAgents",
    "group": "Voice_Prefixes",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voicePrefix/index.js",
    "groupTitle": "Voice_Prefixes"
  },
  {
    "type": "get",
    "url": "/api/voice/prefixes/{id}",
    "title": "Gets a single Prefix",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/prefixes/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowPrefixes",
    "group": "Voice_Prefixes",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voicePrefix/index.js",
    "groupTitle": "Voice_Prefixes"
  },
  {
    "type": "put",
    "url": "/api/voice/prefixes/{id}",
    "title": "Update an existing prefix",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/prefixes/{id} -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "Update",
    "group": "Voice_Prefixes",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voicePrefix/index.js",
    "groupTitle": "Voice_Prefixes"
  },
  {
    "type": "post",
    "url": "/api/voice/prefixes",
    "title": "Create a prefix",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/prefixes -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "create",
    "group": "Voice_Prefixes",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voicePrefix/index.js",
    "groupTitle": "Voice_Prefixes"
  },
  {
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/queues/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/queues/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/queues/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/queues/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/queues/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voiceQueueReport/index.js",
    "groupTitle": "Voice_Queue_Reports"
  },
  {
    "type": "get",
    "url": "/api/voice/queues/reports/index",
    "title": "Get Voice Queues Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/queues/reports/index -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getVoiceQueuesReport",
    "group": "Voice_Queue_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voiceQueue/index.js",
    "groupTitle": "Voice_Queues"
  },
  {
    "type": "post",
    "url": "/api/voice/queues/clone",
    "title": "Clone an existing Queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/queues/clone -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CloneQueues",
    "group": "Voice_Queues",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": [
              "\"rr\"",
              "\"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": "Text",
            "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": "<p>Active/Disactive Campaign</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"preview\"",
              "\"progressive\"",
              "\"power\"",
              "\"predictive\"",
              "\"booked\""
            ],
            "optional": true,
            "field": "dialMethod",
            "description": "<p>Dial Method.</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialLimitChannel",
            "description": "<p>Max 9999 channels, 0 means unlimited.</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialLimitQueue",
            "description": "<p>Max 9999 member in queue(min:1, max:9999), 0 means unlimited.</p>"
          },
          {
            "group": "Body",
            "type": "Float",
            "optional": true,
            "field": "dialPowerLevel",
            "description": "<p>Power Level: Calls for agents (min:1, max:10).</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"agentBusyFactor\"",
              "\"dropRate\""
            ],
            "optional": true,
            "field": "dialPredictiveOptimization",
            "description": "<p>Only for predictive method.</p>"
          },
          {
            "group": "Body",
            "type": "Float",
            "optional": true,
            "field": "dialPredictiveOptimizationPercentage",
            "description": "<p>Predictive Optimization Percentage (min: 1, max: 95)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialPredictiveInterval",
            "description": "<p>Interval Predictive Minutes (min:5 max:30)</p>"
          },
          {
            "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": "<p>Originate Timeout Seconds (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "dialQueueOptions",
            "description": "<p>https://wiki.asterisk.org/wiki/display/AST/Asterisk+13+Application_Queue</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialQueueTimeout",
            "description": "<p>Queue Timeout Seconds (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "dialQueueProject",
            "description": "<p>AGI queue option (use: agi://127.0.0.1/square,&lt;project_name&gt;)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialCongestionMaxRetry",
            "description": "<p>#Congestion Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialCongestionRetryFrequency",
            "description": "<p>Congestion Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialBusyMaxRetry",
            "description": "<p>#Busy Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialBusyRetryFrequency",
            "description": "<p>Busy Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialNoAnswerMaxRetry",
            "description": "<p>#NoAnswer Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialNoAnswerRetryFrequency",
            "description": "<p>NoAnswer Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialGlobalMaxRetry",
            "description": "<p>#Global Max Retry (min:1, max:999)</p>"
          },
          {
            "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": "<p>Active/Disactive AMD</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDInitialSilence",
            "description": "<p>#AMD Initial Silence</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDGreeting",
            "description": "<p>#AMD Greeting</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDAfterGreetingSilence",
            "description": "<p>#AMD After Greeting Silence</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDTotalAnalysisTime",
            "description": "<p>#AMD Total Analysis Time</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDMinWordLength",
            "description": "<p>#AMD Min Word Length</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDBetweenWordsSilence",
            "description": "<p>#AMD Between Words Silence</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDMaximumNumberOfWords",
            "description": "<p>#AMD Maximum Number Of Words</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDSilenceThreshold",
            "description": "<p>#AMD Silence Threshold (min:0, max:32767)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAMDMaximumWordLength",
            "description": "<p>#AMD Maximum Word Length</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialRecallMeTimeout",
            "description": "<p>#RecallMe Timeout (min:1)</p>"
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "dialRecallInQueue",
            "description": "<p>Active/Disactive Recall In Queue</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"DESC\"",
              "\"ASC\""
            ],
            "optional": true,
            "field": "dialOrderByScheduledAt",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "dialQueueProject2",
            "description": "<p>AGI queue option (use: agi://127.0.0.1/square,&lt;project_name&gt;)</p>"
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "dialAgiAfterHangupClient",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "dialAgiAfterHangupAgent",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialRandomLastDigitCallerIdNumber",
            "description": "<p>Random Last Digit (min:1, max:15)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialCutDigit",
            "description": "<p>Cut Digit (min:1, max:15)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialNoSuchNumberMaxRetry",
            "description": "<p>#NoSuchNumber Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialNoSuchNumberRetryFrequency",
            "description": "<p>NoSuchNumber Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialDropMaxRetry",
            "description": "<p>#Drop Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialDropRetryFrequency",
            "description": "<p>Drop Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAbandonedMaxRetry",
            "description": "<p>#Abandoned Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAbandonedRetryFrequency",
            "description": "<p>Abandoned Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialMachineMaxRetry",
            "description": "<p>#Machine Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialMachineRetryFrequency",
            "description": "<p>Machine Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAgentRejectMaxRetry",
            "description": "<p>#AgentReject Retry (min:1, max:999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialAgentRejectRetryFrequency",
            "description": "<p>AgentReject Retry Frequency Minutes (min:1, max:99999)</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "mandatoryDispositionPauseId",
            "description": "<p>Status to put when mandatory disposition is enabled</p>"
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "mandatoryDisposition",
            "description": "<p>Enabled/disables mandatory dispo on a queue</p>"
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialPredictiveIntervalMaxThreshold",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "dialPredictiveIntervalMinThreshold",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "Text",
            "optional": true,
            "field": "location",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "transcribeName",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "transcribeStatus",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "fileUri",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "fileText",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Text",
            "optional": true,
            "field": "failureReason",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "sentiment",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Float",
            "optional": true,
            "field": "sPositive",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Float",
            "optional": true,
            "field": "sNegative",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Float",
            "optional": true,
            "field": "sNeutral",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Float",
            "optional": true,
            "field": "sMixed",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "tempSentiment",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "createdAt",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "updatedAt",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/recordings?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/recordings?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/recordings?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/recordings?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/recordings?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voiceRecording/index.js",
    "groupTitle": "Voice_Recordings"
  },
  {
    "type": "delete",
    "url": "/api/voice/recordings/{id}",
    "title": "Delete voice recording",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/recordings/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "destroy",
    "group": "Voice_Recordings",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voiceRecording/index.js",
    "groupTitle": "Voice_Recordings"
  },
  {
    "type": "get",
    "url": "/api/voice/recordings/{id}/downloads",
    "title": "Download Recording",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/recordings/{id}/downloads -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "downloads",
    "group": "Voice_Recordings",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voiceRecording/index.js",
    "groupTitle": "Voice_Recordings"
  },
  {
    "type": "get",
    "url": "/api/voice/recordings/{id}/transcribe",
    "title": "Run Transcribe Recording",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/recordings/{id}/transcribe -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "transcribe",
    "group": "Voice_Recordings",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voiceRecording/index.js",
    "groupTitle": "Voice_Recordings"
  },
  {
    "type": "post",
    "url": "/api/voice/recordings/{id}/transcribe",
    "title": "Run Transcribe Recording",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/voice/recordings/{id}/transcribe -d '{\"runSentiment\": \"true\"}' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "transcribe",
    "group": "Voice_Recordings",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voice/transfers/reports?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voice/transfers/reports?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voice/transfers/reports?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voice/transfers/reports?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voice/transfers/reports?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/voiceTransferReport/index.js",
    "groupTitle": "Voice_Transfer_Reports"
  },
  {
    "type": "post",
    "url": "/api/integrations/vtiger/accounts",
    "title": "Creates a new Vtiger Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateVtiger_Accounts",
    "group": "Vtiger_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": false,
            "field": "username",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "moduleName",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "remoteUri",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "serverUrl",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "accessKey",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerAccount/index.js",
    "groupTitle": "Vtiger_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/integrations/vtiger/accounts/{id}",
    "title": "Deletes a Vtiger Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/accounts/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteVtiger_Accounts",
    "group": "Vtiger_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerAccount/index.js",
    "groupTitle": "Vtiger_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/vtiger/accounts",
    "title": "Gets a list of Vtiger Accounts",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/accounts -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetVtiger_Accounts",
    "group": "Vtiger_Accounts",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/vtiger/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/vtiger/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/vtiger/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/vtiger/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/vtiger/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerAccount/index.js",
    "groupTitle": "Vtiger_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/vtiger/accounts/{id}",
    "title": "Gets a single Vtiger Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/accounts/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowVtiger_Accounts",
    "group": "Vtiger_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerAccount/index.js",
    "groupTitle": "Vtiger_Accounts"
  },
  {
    "type": "post",
    "url": "/api/integrations/vtiger/accounts/{id}/configurations",
    "title": "Creates new configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/accounts/{id}/configurations -d '{\"name\": \"conf1\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addConfiguration",
    "group": "Vtiger_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerAccount/index.js",
    "groupTitle": "Vtiger_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/vtiger/accounts/{id}/configurations",
    "title": "Gets account configurations",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/accounts/{id}/configurations -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getConfigurations",
    "group": "Vtiger_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerAccount/index.js",
    "groupTitle": "Vtiger_Accounts"
  },
  {
    "type": "get",
    "url": "/api/integrations/vtiger/accounts/{id}/fields",
    "title": "Gets account fields",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/accounts/{id}/fields -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getFields",
    "group": "Vtiger_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerAccount/index.js",
    "groupTitle": "Vtiger_Accounts"
  },
  {
    "type": "put",
    "url": "/api/integrations/vtiger/accounts/{id}",
    "title": "Update an existing Vtiger Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateVtiger_Accounts",
    "group": "Vtiger_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerAccount/index.js",
    "groupTitle": "Vtiger_Accounts"
  },
  {
    "type": "post",
    "url": "/api/integrations/vtiger/configurations",
    "title": "Creates a new Vtiger Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/configurations -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateVtiger_Configurations",
    "group": "Vtiger_Configurations",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "name",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerConfiguration/index.js",
    "groupTitle": "Vtiger_Configurations"
  },
  {
    "type": "delete",
    "url": "/api/integrations/vtiger/configurations/{id}",
    "title": "Deletes a Vtiger Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/configurations/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteVtiger_Configurations",
    "group": "Vtiger_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerConfiguration/index.js",
    "groupTitle": "Vtiger_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/vtiger/configurations",
    "title": "Gets a list of Vtiger Configurations",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/configurations -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetVtiger_Configurations",
    "group": "Vtiger_Configurations",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/vtiger/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/vtiger/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/vtiger/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/vtiger/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/vtiger/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerConfiguration/index.js",
    "groupTitle": "Vtiger_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/vtiger/configurations/{id}",
    "title": "Gets a single Vtiger Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/configurations/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowVtiger_Configurations",
    "group": "Vtiger_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerConfiguration/index.js",
    "groupTitle": "Vtiger_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/vtiger/configurations/{id}/descriptions",
    "title": "Gets configurations descriptions",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/configurations/{id}/descriptions -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getDescriptions",
    "group": "Vtiger_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerConfiguration/index.js",
    "groupTitle": "Vtiger_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/vtiger/configurations/{id}/fields",
    "title": "Gets configurations fields",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/configurations/{id}/fields -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getFields",
    "group": "Vtiger_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerConfiguration/index.js",
    "groupTitle": "Vtiger_Configurations"
  },
  {
    "type": "get",
    "url": "/api/integrations/vtiger/configurations/{id}/subjects",
    "title": "Gets configurations subjects",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/configurations/{id}/subjects -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getSubjects",
    "group": "Vtiger_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerConfiguration/index.js",
    "groupTitle": "Vtiger_Configurations"
  },
  {
    "type": "put",
    "url": "/api/integrations/vtiger/configurations/{id}",
    "title": "Update an existing Vtiger Configuration",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/configurations/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateVtiger_Configurations",
    "group": "Vtiger_Configurations",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerConfiguration/index.js",
    "groupTitle": "Vtiger_Configurations"
  },
  {
    "type": "post",
    "url": "/api/integrations/vtiger/fields",
    "title": "Creates a new Vtiger Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/fields -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateVtiger_Fields",
    "group": "Vtiger_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerField/index.js",
    "groupTitle": "Vtiger_Fields"
  },
  {
    "type": "delete",
    "url": "/api/integrations/vtiger/fields/{id}",
    "title": "Deletes a Vtiger Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/fields/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteVtiger_Fields",
    "group": "Vtiger_Fields",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerField/index.js",
    "groupTitle": "Vtiger_Fields"
  },
  {
    "type": "get",
    "url": "/api/integrations/vtiger/fields",
    "title": "Gets a list of Vtiger Fields",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/fields -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetVtiger_Fields",
    "group": "Vtiger_Fields",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/vtiger/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/vtiger/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/vtiger/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/vtiger/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/vtiger/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerField/index.js",
    "groupTitle": "Vtiger_Fields"
  },
  {
    "type": "get",
    "url": "/api/integrations/vtiger/fields/{id}",
    "title": "Gets a single Vtiger Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/fields/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowVtiger_Fields",
    "group": "Vtiger_Fields",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerField/index.js",
    "groupTitle": "Vtiger_Fields"
  },
  {
    "type": "put",
    "url": "/api/integrations/vtiger/fields/{id}",
    "title": "Update an existing Vtiger Field",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/integrations/vtiger/fields/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateVtiger_Fields",
    "group": "Vtiger_Fields",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/intVtigerField/index.js",
    "groupTitle": "Vtiger_Fields"
  },
  {
    "type": "post",
    "url": "/api/webbar/answer",
    "title": "answer webrtc call",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/webbar/answer -d '{\"sessionId\": \"<sessionId>\", \"userId\": 54}' \\\n -H \"Content-Type: application/json\" -X POST",
        "type": "json"
      }
    ],
    "name": "Web_Bar_answer",
    "group": "WebBar",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "sessionId",
            "description": ""
          },
          {
            "group": "Body",
            "type": "number",
            "optional": false,
            "field": "userId",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/webbar/index.js",
    "groupTitle": "WebBar"
  },
  {
    "type": "post",
    "url": "/api/webbar/calls",
    "title": "webrtc call list",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/webbar/calls -d '{\"userId\": 54}' \\\n -H \"Content-Type: application/json\" -X POST",
        "type": "json"
      }
    ],
    "name": "Web_Bar_calls",
    "group": "WebBar",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "number",
            "optional": false,
            "field": "userId",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/webbar/index.js",
    "groupTitle": "WebBar"
  },
  {
    "type": "post",
    "url": "/api/webbar/hangup",
    "title": "hangup webrtc call",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/webbar/hangup -d '{\"sessionId\": \"<sessionId>\", \"userId\": 54}' \\\n -H \"Content-Type: application/json\" -X POST",
        "type": "json"
      }
    ],
    "name": "Web_Bar_hangup",
    "group": "WebBar",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "sessionId",
            "description": ""
          },
          {
            "group": "Body",
            "type": "number",
            "optional": false,
            "field": "userId",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/webbar/index.js",
    "groupTitle": "WebBar"
  },
  {
    "type": "post",
    "url": "/api/webbar/hold",
    "title": "hold webrtc call",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/webbar/hold -d '{\"sessionId\": \"<sessionId>\", \"userId\": 54}' \\\n -H \"Content-Type: application/json\" -X POST",
        "type": "json"
      }
    ],
    "name": "Web_Bar_hold",
    "group": "WebBar",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "sessionId",
            "description": ""
          },
          {
            "group": "Body",
            "type": "number",
            "optional": false,
            "field": "userId",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/webbar/index.js",
    "groupTitle": "WebBar"
  },
  {
    "type": "post",
    "url": "/api/webbar/unhold",
    "title": "unhold webrtc call",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/webbar/unhold -d '{\"sessionId\": \"<sessionId>\", \"userId\": 54}' \\\n -H \"Content-Type: application/json\" -X POST",
        "type": "json"
      }
    ],
    "name": "Web_Bar_hold",
    "group": "WebBar",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "sessionId",
            "description": ""
          },
          {
            "group": "Body",
            "type": "number",
            "optional": false,
            "field": "userId",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/webbar/index.js",
    "groupTitle": "WebBar"
  },
  {
    "type": "post",
    "url": "/api/webbar/originate",
    "title": "Originate new webrtc call",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/webbar/originate -d '{\"callNumber\": \"0119692844\", \"userId\": 54}' \\\n -H \"Content-Type: application/json\" -X POST",
        "type": "json"
      }
    ],
    "name": "Web_Bar_originate",
    "group": "WebBar",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "callNumber",
            "description": ""
          },
          {
            "group": "Body",
            "type": "number",
            "optional": false,
            "field": "userId",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "callerId",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "callbackUrl",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/webbar/index.js",
    "groupTitle": "WebBar"
  },
  {
    "type": "post",
    "url": "/api/webbar/transfer",
    "title": "blind transfer webrtc call",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/webbar/transfer -d '{\"userId\": 54, \"sessionId\":\"<sessionId>\", \"transferNumber\":\"<transferNumber>\"}' \\\n -H \"Content-Type: application/json\" -X POST",
        "type": "json"
      }
    ],
    "name": "Web_Bar_transfer",
    "group": "WebBar",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "number",
            "optional": false,
            "field": "userId",
            "description": ""
          },
          {
            "group": "Body",
            "type": "string",
            "optional": false,
            "field": "sessionId",
            "description": ""
          },
          {
            "group": "Body",
            "type": "string",
            "optional": false,
            "field": "transferNumber",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/webbar/index.js",
    "groupTitle": "WebBar"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/accounts/{id}/users",
    "title": "Add agents to a whatsapp account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/users -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddAgents",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/accounts",
    "title": "Creates a new Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateAccounts",
    "group": "Whatsapp_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\""
            ],
            "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": "Text",
            "optional": true,
            "field": "notificationTemplate",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "notificationSound",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "notificationShake",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "waitForTheAssignedAgent",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "queueTransfer",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "queueTransferTimeout",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "agentTransfer",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "agentTransferTimeout",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "mandatoryDispositionPauseId",
            "description": "<p>Status to put when mandatory disposition is enabled</p>"
          },
          {
            "group": "Body",
            "type": "Boolean",
            "optional": true,
            "field": "mandatoryDisposition",
            "description": "<p>Enabled/disables mandatory dispo on a queue</p>"
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/whatsapp/accounts/{id}",
    "title": "Deletes a Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteAccounts",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/accounts/describe",
    "title": "Gets table info about Accounts",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeAccounts",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/accounts",
    "title": "Gets a list of Accounts",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetAccounts",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/accounts/{id}/users",
    "title": "Gets agents from whatsapp account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/users -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "GetAgents",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/whatsapp/accounts/{id}/users",
    "title": "Removes agents from a whatsapp account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveAgents",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/whatsapp/accounts/{id}/canned_answers",
    "title": "Removes canned answers from account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/canned_answers?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveAnswers",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "delete",
    "url": "/api/whatsapp/accounts/{id}/dispositions",
    "title": "Removes dispositions from account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/dispositions?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveDispositions",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/accounts/{id}",
    "title": "Gets a single Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowAccounts",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "put",
    "url": "/api/whatsapp/messages/{id}/accept",
    "title": "Accepts message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/messages/{id}/accept \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "acceptMessage",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappMessage/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/accounts/{id}/canned_answers",
    "title": "Creates new canned answer",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/canned_answers -d '{\"name\": \"vip\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addAnswer",
    "group": "Whatsapp_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": ""
          },
          {
            "group": "Body",
            "type": "Virtual",
            "optional": true,
            "field": "name",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/accounts/{id}/applications",
    "title": "Creates new applications",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/applications -d '[{\"app\": \"queue\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addApplications",
    "group": "Whatsapp_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": "Text",
            "optional": true,
            "field": "appdata",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interval",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/accounts/{id}/dispositions",
    "title": "Creates new disposition",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/dispositions -d '{\"name\": \"vip\"}' -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addDisposition",
    "group": "Whatsapp_Accounts",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "name",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/accounts/{id}/canned_answers",
    "title": "Gets account canned answers",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/canned_answers -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getAnswers",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/accounts/{id}/applications",
    "title": "Gets account applications",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/applications -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getApplications",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/accounts/{id}/dispositions",
    "title": "Gets account dispositions",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/dispositions -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getDispositions",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/accounts/{id}/notify",
    "title": "Notify new message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id}/notify -d '{\"body\": \"hello world\", \"...\": \"...\"}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "notify",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <p>This API is used to create a new whatsapp message to be sent to the system.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "put",
    "url": "/api/whatsapp/messages/{id}/reject",
    "title": "Rejects message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/messages/{id}/reject \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "rejectMessage",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappMessage/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/accounts/{id}/send",
    "title": "Send new whatsapp message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/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": "sendWhatsapp",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/messages/{id}/status",
    "title": "Receive message status",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/messages/{id}/status \\ \n -H 'Content-Type: application/json' -v -X POST",
        "type": "json"
      }
    ],
    "name": "statusMessage",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappMessage/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "put",
    "url": "/api/whatsapp/accounts/{id}",
    "title": "Update an existing Account",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/accounts/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateAccounts",
    "group": "Whatsapp_Accounts",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappAccount/index.js",
    "groupTitle": "Whatsapp_Accounts"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/applications",
    "title": "Creates a new Application",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/applications -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateApplications",
    "group": "Whatsapp_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": "Text",
            "optional": true,
            "field": "appdata",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "interval",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappApplication/index.js",
    "groupTitle": "Whatsapp_Applications"
  },
  {
    "type": "delete",
    "url": "/api/whatsapp/applications/{id}",
    "title": "Deletes a Application",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/applications/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteApplications",
    "group": "Whatsapp_Applications",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappApplication/index.js",
    "groupTitle": "Whatsapp_Applications"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/applications",
    "title": "Gets a list of Applications",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/applications -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetApplications",
    "group": "Whatsapp_Applications",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/applications?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/applications?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/applications?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/applications?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/applications?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappApplication/index.js",
    "groupTitle": "Whatsapp_Applications"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/applications/{id}",
    "title": "Gets a single Application",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/applications/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowApplications",
    "group": "Whatsapp_Applications",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappApplication/index.js",
    "groupTitle": "Whatsapp_Applications"
  },
  {
    "type": "put",
    "url": "/api/whatsapp/applications/{id}",
    "title": "Update an existing Application",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/applications/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateApplications",
    "group": "Whatsapp_Applications",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappApplication/index.js",
    "groupTitle": "Whatsapp_Applications"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/interactions/{id}/tags",
    "title": "Add tags to the interaction",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/interaction/{id}/tags -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddTags",
    "group": "Whatsapp_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappInteraction/index.js",
    "groupTitle": "Whatsapp_Interactions"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/interactions",
    "title": "Creates a new Interaction",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/interactions -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateInteractions",
    "group": "Whatsapp_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappInteraction/index.js",
    "groupTitle": "Whatsapp_Interactions"
  },
  {
    "type": "delete",
    "url": "/api/whatsapp/interactions/{id}",
    "title": "Deletes a Interaction",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/interactions/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteInteractions",
    "group": "Whatsapp_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappInteraction/index.js",
    "groupTitle": "Whatsapp_Interactions"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/interactions/describe",
    "title": "Gets table info about Interactions",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/interactions/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeInteractions",
    "group": "Whatsapp_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappInteraction/index.js",
    "groupTitle": "Whatsapp_Interactions"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/interactions",
    "title": "Gets a list of Interactions",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/interactions -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetInteractions",
    "group": "Whatsapp_Interactions",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/interactions?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/interactions?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/interactions?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/interactions?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/interactions?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappInteraction/index.js",
    "groupTitle": "Whatsapp_Interactions"
  },
  {
    "type": "delete",
    "url": "/api/whatsapp/interactions/{id}/tags",
    "title": "Removes tags from interaction",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/interactions/{id}/tags?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveTags",
    "group": "Whatsapp_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappInteraction/index.js",
    "groupTitle": "Whatsapp_Interactions"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/interactions/{id}",
    "title": "Gets a single Interaction",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/interactions/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowInteractions",
    "group": "Whatsapp_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappInteraction/index.js",
    "groupTitle": "Whatsapp_Interactions"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/interactions/{id}/messages",
    "title": "Creates new messages",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/interactions/{id}/messages -d '[{\"to\": \"+3901119886500\", \"...\": \"...\"}]' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "addMessage",
    "group": "Whatsapp_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappInteraction/index.js",
    "groupTitle": "Whatsapp_Interactions"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/interactions/{id}/download",
    "title": "Gets interaction",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/interactions/{id}/download -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "download",
    "group": "Whatsapp_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappInteraction/index.js",
    "groupTitle": "Whatsapp_Interactions"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/interactions/{id}/messages",
    "title": "Gets interaction messages",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/interactions/{id}/messages -v -u {name}:{password} -X GET",
        "type": "json"
      }
    ],
    "name": "getMessages",
    "group": "Whatsapp_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappInteraction/index.js",
    "groupTitle": "Whatsapp_Interactions"
  },
  {
    "type": "put",
    "url": "/api/whatsapp/interactions/{id}",
    "title": "Update an existing Interaction",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/interactions/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateInteractions",
    "group": "Whatsapp_Interactions",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappInteraction/index.js",
    "groupTitle": "Whatsapp_Interactions"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/messages",
    "title": "Creates a new Message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/messages -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateMessages",
    "group": "Whatsapp_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappMessage/index.js",
    "groupTitle": "Whatsapp_Messages"
  },
  {
    "type": "delete",
    "url": "/api/whatsapp/messages/{id}",
    "title": "Deletes a Message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/messages/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteMessages",
    "group": "Whatsapp_Messages",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappMessage/index.js",
    "groupTitle": "Whatsapp_Messages"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/messages/describe",
    "title": "Gets table info about Messages",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/messages/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeMessages",
    "group": "Whatsapp_Messages",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappMessage/index.js",
    "groupTitle": "Whatsapp_Messages"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/messages",
    "title": "Gets a list of Messages",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/messages -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetMessages",
    "group": "Whatsapp_Messages",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/messages?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/messages?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/messages?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/messages?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/messages?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappMessage/index.js",
    "groupTitle": "Whatsapp_Messages"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/messages/{id}",
    "title": "Gets a single Message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/messages/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowMessages",
    "group": "Whatsapp_Messages",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappMessage/index.js",
    "groupTitle": "Whatsapp_Messages"
  },
  {
    "type": "put",
    "url": "/api/whatsapp/messages/{id}",
    "title": "Update an existing Message",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/messages/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateMessages",
    "group": "Whatsapp_Messages",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappMessage/index.js",
    "groupTitle": "Whatsapp_Messages"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/reports/queue",
    "title": "Creates a new Whatsapp Queue Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/reports/queue -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateWhatsapp_Queue_Reports",
    "group": "Whatsapp_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueueReport/index.js",
    "groupTitle": "Whatsapp_Queue_Reports"
  },
  {
    "type": "delete",
    "url": "/api/whatsapp/reports/queue/{id}",
    "title": "Deletes a Whatsapp Queue Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/reports/queue/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteWhatsapp_Queue_Reports",
    "group": "Whatsapp_Queue_Reports",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueueReport/index.js",
    "groupTitle": "Whatsapp_Queue_Reports"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/reports/queue/describe",
    "title": "Gets table info about Whatsapp Queue Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/reports/queue/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeWhatsapp_Queue_Reports",
    "group": "Whatsapp_Queue_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueueReport/index.js",
    "groupTitle": "Whatsapp_Queue_Reports"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/reports/queue",
    "title": "Gets a list of Whatsapp Queue Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/reports/queue -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetWhatsapp_Queue_Reports",
    "group": "Whatsapp_Queue_Reports",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/reports/queue?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/reports/queue?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/reports/queue?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/reports/queue?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/reports/queue?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueueReport/index.js",
    "groupTitle": "Whatsapp_Queue_Reports"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/reports/queue/{id}",
    "title": "Gets a single Whatsapp Queue Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/reports/queue/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowWhatsapp_Queue_Reports",
    "group": "Whatsapp_Queue_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueueReport/index.js",
    "groupTitle": "Whatsapp_Queue_Reports"
  },
  {
    "type": "put",
    "url": "/api/whatsapp/reports/queue/{id}",
    "title": "Update an existing Whatsapp Queue Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/reports/queue/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateWhatsapp_Queue_Reports",
    "group": "Whatsapp_Queue_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueueReport/index.js",
    "groupTitle": "Whatsapp_Queue_Reports"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/queues/{id}/users",
    "title": "Add agents to a queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/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": "Whatsapp_Queues",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueue/index.js",
    "groupTitle": "Whatsapp_Queues"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/queues/{id}/teams",
    "title": "Add teams to a queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/queues/{id}/teams -d '{\"ids\": [1,2]}' \\ \n -H 'Content-Type: application/json' -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "AddTeams",
    "group": "Whatsapp_Queues",
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueue/index.js",
    "groupTitle": "Whatsapp_Queues"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/queues",
    "title": "Creates a new Queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/queues -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateQueues",
    "group": "Whatsapp_Queues",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "name",
            "description": ""
          },
          {
            "group": "Body",
            "type": "Integer",
            "optional": true,
            "field": "timeout",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"rrmemory\"",
              "\"beepall\"",
              "\"roundrobin\""
            ],
            "optional": true,
            "field": "strategy",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueue/index.js",
    "groupTitle": "Whatsapp_Queues"
  },
  {
    "type": "delete",
    "url": "/api/whatsapp/queues/{id}",
    "title": "Deletes a Queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/queues/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteQueues",
    "group": "Whatsapp_Queues",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueue/index.js",
    "groupTitle": "Whatsapp_Queues"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/queues/describe",
    "title": "Gets table info about Queues",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/queues/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeQueues",
    "group": "Whatsapp_Queues",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueue/index.js",
    "groupTitle": "Whatsapp_Queues"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/queues/{id}/users",
    "title": "Gets queue agents",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/queues/{id}/users -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "GetAgents",
    "group": "Whatsapp_Queues",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueue/index.js",
    "groupTitle": "Whatsapp_Queues"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/queues/{id}/members",
    "title": "GetMembers",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/queues/{id}/members  -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetMembers",
    "group": "Whatsapp_Queues",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueue/index.js",
    "groupTitle": "Whatsapp_Queues"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/queues",
    "title": "Gets a list of Queues",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/queues -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetQueues",
    "group": "Whatsapp_Queues",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/queues?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/queues?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/queues?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/queues?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/queues?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueue/index.js",
    "groupTitle": "Whatsapp_Queues"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/queues/{id}/teams",
    "title": "Gets queues list",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/queues/{id}/teams -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetTeams",
    "group": "Whatsapp_Queues",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueue/index.js",
    "groupTitle": "Whatsapp_Queues"
  },
  {
    "type": "delete",
    "url": "/api/whatsapp/queues/{id}/users",
    "title": "Removes agents from a queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/queues/{id}/users?ids=1&ids=2 -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "RemoveAgents",
    "group": "Whatsapp_Queues",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueue/index.js",
    "groupTitle": "Whatsapp_Queues"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/queues/{id}",
    "title": "Gets a single Queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/queues/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowQueues",
    "group": "Whatsapp_Queues",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueue/index.js",
    "groupTitle": "Whatsapp_Queues"
  },
  {
    "type": "put",
    "url": "/api/whatsapp/queues/{id}",
    "title": "Update an existing Queue",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/queues/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateQueues",
    "group": "Whatsapp_Queues",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappQueue/index.js",
    "groupTitle": "Whatsapp_Queues"
  },
  {
    "type": "post",
    "url": "/api/whatsapp/reports/transfer",
    "title": "Creates a new Whatsapp Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/reports/transfer -d '{\"key1\": \"valu1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X POST",
        "type": "json"
      }
    ],
    "name": "CreateWhatsapp_Transfer_Reports",
    "group": "Whatsapp_Transfer_Reports",
    "parameter": {
      "fields": {
        "Body": [
          {
            "group": "Body",
            "type": "String",
            "optional": false,
            "field": "uniqueid",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"account\"",
              "\"agent\"",
              "\"queue\""
            ],
            "optional": false,
            "field": "type",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "transferredAt",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappTransferReport/index.js",
    "groupTitle": "Whatsapp_Transfer_Reports"
  },
  {
    "type": "delete",
    "url": "/api/whatsapp/reports/transfer/{id}",
    "title": "Deletes a Whatsapp Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/reports/transfer/{id} -v -u {name}:{password} -X DELETE",
        "type": "json"
      }
    ],
    "name": "DeleteWhatsapp_Transfer_Reports",
    "group": "Whatsapp_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappTransferReport/index.js",
    "groupTitle": "Whatsapp_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/reports/transfer/describe",
    "title": "Gets table info about Whatsapp Transfer Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/reports/transfer/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeWhatsapp_Transfer_Reports",
    "group": "Whatsapp_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappTransferReport/index.js",
    "groupTitle": "Whatsapp_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/reports/transfer",
    "title": "Gets a list of Whatsapp Transfer Reports",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/reports/transfer -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "GetWhatsapp_Transfer_Reports",
    "group": "Whatsapp_Transfer_Reports",
    "description": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/whatsapp/reports/transfer?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/whatsapp/reports/transfer?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/whatsapp/reports/transfer?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/whatsapp/reports/transfer?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/whatsapp/reports/transfer?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappTransferReport/index.js",
    "groupTitle": "Whatsapp_Transfer_Reports"
  },
  {
    "type": "get",
    "url": "/api/whatsapp/reports/transfer/{id}",
    "title": "Gets a single Whatsapp Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/reports/transfer/{id} -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "ShowWhatsapp_Transfer_Reports",
    "group": "Whatsapp_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappTransferReport/index.js",
    "groupTitle": "Whatsapp_Transfer_Reports"
  },
  {
    "type": "put",
    "url": "/api/whatsapp/reports/transfer/{id}",
    "title": "Update an existing Whatsapp Transfer Report",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/whatsapp/reports/transfer/{id} -d '{\"key1\": \"value1\", \"key2\": \"value2\", \"...\": \"...\"}' \\\n -H \"Content-Type: application/json\" -v -u {name}:{password} -X PUT",
        "type": "json"
      }
    ],
    "name": "updateWhatsapp_Transfer_Reports",
    "group": "Whatsapp_Transfer_Reports",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/whatsappTransferReport/index.js",
    "groupTitle": "Whatsapp_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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/zendesk/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/zendesk/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/zendesk/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/zendesk/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/zendesk/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/zendesk/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/zendesk/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/zendesk/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/zendesk/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/zendesk/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/zendesk/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/zendesk/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/zendesk/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/zendesk/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/zendesk/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "host",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "zone",
            "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": "serverUrl",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "code",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "refreshToken",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/zoho/accounts?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/zoho/accounts?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/zoho/accounts?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/zoho/accounts?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/zoho/accounts?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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",
            "allowedValues": [
              "\"lead\"",
              "\"contact\"",
              "\"nothing\""
            ],
            "optional": true,
            "field": "moduleCreate",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "allowedValues": [
              "\"contact_lead\"",
              "\"contact\"",
              "\"lead\""
            ],
            "optional": true,
            "field": "moduleSearch",
            "description": ""
          },
          {
            "group": "Body",
            "type": "String",
            "optional": true,
            "field": "description",
            "description": ""
          }
        ]
      }
    },
    "description": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/zoho/configurations?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/zoho/configurations?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/zoho/configurations?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/zoho/configurations?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/zoho/configurations?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/integrations/zoho/fields?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/integrations/zoho/fields?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/integrations/zoho/fields?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/integrations/zoho/fields?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/integrations/zoho/fields?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "version": "0.0.0",
    "filename": "server/api/cdr/index.js",
    "groupTitle": "cdr"
  },
  {
    "type": "get",
    "url": "/api/cdr/describe",
    "title": "Gets table info about Cdrs",
    "examples": [
      {
        "title": "Example usage:",
        "content": "curl https://{domain}/api/cdr/describe -v -u {name}:{password}",
        "type": "json"
      }
    ],
    "name": "DescribeCdrs",
    "group": "cdr",
    "description": "<p>Motion will return a HTTP status code <code>200</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/cdr?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/cdr?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/cdr?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/cdr?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/cdr?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "data",
            "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": "<p>Motion will return a HTTP status code <code>201</code> upon success.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>204</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will always return paged results. Motion returns paging data in the <code>Content-Range</code> header in the form start - end / total.</p> <p>Upon success Motion will return a HTTP status code <code>200 OK</code> if the entire collection was returned otherwise it will return a HTTP status code <code>206</code> Partial Content.</p> <p>Motion renders the resulting JSON representation in the response body.</p> <h2>Retrieving Specific Fields</h2> <p>To return only specific fields for a result set you can utilize the <code>fields</code> parameter. This parameter accepts a comma-separated list.</p> <p>A call returning only <code>id</code> and <code>name</code> for a result set would look like this.</p> <p><code>GET /api/voiceQueuesLog?fields=id,name</code></p> <h2>Filtering</h2> <p>You can perform exact-match filtering on any of a model's fields by using the field name as the key and supplying it with a value. These parameters accept a comma-separated list.</p> <p>A call returning a result set for records with <code>name</code> of <code>john.doe</code> or <code>jane.miller</code>.</p> <p><code>GET /api/voiceQueuesLog?name=john.doe,jane.miller</code></p> <p>If you use the key <code>filter</code> the result will be filtered by the value you specify.</p> <p><code>GET /api/voiceQueuesLog?filter=john</code></p> <h2>Sorting</h2> <p>To sort a result set based on one or several fields you can utilize the <code>sort</code> parameter. This parameters accepts a comma-separated list.</p> <p>Results will be sorted in the order of the fields provided. The default sorting order for fields is ascending. Fields can be sorted in descending order by prefixing them with a dash (<code>-</code>).</p> <p>A call sorting a result by <code>id</code> ascending and then <code>name</code> descending would look like this.</p> <p><code>GET /api/voiceQueuesLog?sort=id,-name</code></p> <h2>Offset and Limit</h2> <p>Query results are always paged. Motion leverages the <code>offset</code> and <code>limit</code> parameters to facilitate this.</p> <p>When the neither of these parameters are explicitly supplied the handler will assume the a default <code>limit</code> of <code>100</code>.</p> <p><code>offset</code> is a number indicating the start position in the result set you want to return.</p> <p><code>limit</code> is a number indicating how many records past the start position you want returned.</p> <p>A call with a result set starting at <code>5</code> and returning no more than <code>25</code> records would look like this.</p> <p><code>GET /api/voiceQueuesLog?offset=5&amp;limit=25</code></p> <p>If there were <code>50</code> records in total, the returned <code>Content-Range</code> header would look like this.</p> <p><code>Content-Range: 5-30/50</code></p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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": "<p>Motion will return a HTTP status code <code>200</code> upon success. Motion return a HTTP status code <code>404</code> if the corresponding record could not be located.</p> <p>Motion renders the resulting JSON representation in the response body.</p>",
    "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 4555461..5f9aae0 100644
--- a/apidoc/api_project.js
+++ b/apidoc/api_project.js
@@ -1,24 +1 @@
-define({
-  "name": "xCALLY Motion API",
-  "version": "2.5.3",
-  "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": "<h2>The API</h2>\n<p>This is the documentation for the xCALLY MOTION API.</p>\n<p>We make changes to the APIs from time to time. For more information, see <a href=\"https://wiki.xcallymotion.com/display/XMV/Motion+GUI\">Changelog</a>.</p>\n<p>The xCALLY MOTION API consists of several different APIs. Use the left sidebar menu to select one.</p>\n<p>The API is a JSON API. XML is not supported. To learn more, see [Working with JSON].</p>\n<p>Endpoints are documented with the HTTP method for the request and a partial resource identifier.\nExample:</p>\n<pre class=\"prettyprint lang-sh\">GET /api/users\n</pre>\n<p>Prepend your xCALLY URL to the resource identifier to get the full endpoint URL:</p>\n<pre class=\"prettyprint lang-sh\">https://motion.xcally.com/api/users\n</pre>\n<p>Curly braces, <code>{}</code>, indicate values you have to supply. Example:</p>\n<pre class=\"prettyprint lang-sh\">GET  /api/users/{id}\n</pre>\n<p>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].</p>\n<p>The examples use basic authentication requiring a xCALLY username and password.</p>\n<h2>Security and Authentication</h2>\n<p>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 or API Key.</p>\n<p>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 API Key.</p>\n<h3>Basic authentication</h3>\n<p>Use the following authentication format with your username and password:\n<code>{username}:{password}</code></p>\n<p>Example:</p>\n<pre class=\"prettyprint lang-sh\">curl -u admin:password https://motion.xcally.com/api/users\n</pre>\n<h3>OAuth access token</h3>\n<p>The xCALLY API supports OAuth authorization flows.</p>\n<p>OAuth access tokens also permit client-side API requests.</p>\n<p>In your requests, specify the access token in an Authorization header as follows:\n<code>Authorization: Bearer {token}</code></p>\n<p>Example:</p>\n<pre class=\"prettyprint lang-sh\">curl -H \"Authorization: Bearer gErypPlm4dOVgGRvA1ZzMH5MQ3nLo8bo\" https://motion.xcally.com/api/users\n</pre>\n<h3>API Key</h3>\n<p>In your request, specify the API Key in apikey query parameter</p>\n<p>Example:</p>\n<pre class=\"prettyprint lang-sh\">curl https://motion.xcally.com/api/users?apikey=eyJhbGciOiJIUzUxMiIsInR5cC...\n</pre>\n<h2>Request Format</h2>\n<p>The xCALLY API is a JSON API. You must supply a <code>Content-Type: application/json</code> header in <code>PUT</code> and <code>POST</code> requests. You must set an <code>Accept: application/json</code> header on all requests. You may get a <code>text/plain</code> response in case of an error like a bad request. You should treat this as an error you need to fix.</p>\n<h2>Response Format</h2>\n<p>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.</p>\n<p>Responses may have the status codes described in the following sections.</p>\n<h3>200 range</h3>\n<p>The request was successful. The status is 200 for successful GET and PUT requests, 201 for most POST requests, and 204 for DELETE requests.</p>\n<h3>400 range</h3>\n<p>The request was not successful. The content type of the response may be <code>text/plain</code> for API-level error messages, such as when trying to call the API without SSL. The content type is <code>application/json</code> for business-level error messages because the response includes a JSON object with information about the error.</p>\n<p>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.</p>\n<h3>500 range</h3>\n<p>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 [email-masked].</p>\n<p>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.</p>\n<h2>Data Types</h2>\n<p>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.</p>\n<h2>ID integers</h2>\n<p>Most xCALLY Support resources such as queues and users are identified by the integer specified by the id attribute of API responses.</p>\n<p>The default numeric type in JavaScript, Ruby, Python, and PHP is sufficient to represent xCALLY Support ID integers.</p>\n<h2>Time stamps</h2>\n<p>Time stamps use UTC time and are formatted as ISO 8601 strings. Example: <code>2017-04-16T09:14:57Z</code></p>\n"
-  },
-  "template": {
-    "withGenerator": false,
-    "withCompare": false,
-    "forceLanguage": "en"
-  },
-  "sampleUrl": false,
-  "defaultVersion": "0.0.0",
-  "apidoc": "0.3.0",
-  "generator": {
-    "name": "apidoc",
-    "time": "2020-09-10T09:06:14.467Z",
-    "url": "http://apidocjs.com",
-    "version": "0.24.0"
-  }
-});
+define({
  "name": "xCALLY Motion API",
  "version": "2.5.3",
  "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": "<h2>The API</h2>\n<p>This is the documentation for the xCALLY MOTION API.</p>\n<p>We make changes to the APIs from time to time. For more information, see <a href=\"https://wiki.xcallymotion.com/display/XMV/Motion+GUI\">Changelog</a>.</p>\n<p>The xCALLY MOTION API consists of several different APIs. Use the left sidebar menu to select one.</p>\n<p>The API is a JSON API. XML is not supported. To learn more, see [Working with JSON].</p>\n<p>Endpoints are documented with the HTTP method for the request and a partial resource identifier.\nExample:</p>\n<pre class=\"prettyprint lang-sh\">GET /api/users\n</pre>\n<p>Prepend your xCALLY URL to the resource identifier to get the full endpoint URL:</p>\n<pre class=\"prettyprint lang-sh\">https://motion.xcally.com/api/users\n</pre>\n<p>Curly braces, <code>{}</code>, indicate values you have to supply. Example:</p>\n<pre class=\"prettyprint lang-sh\">GET  /api/users/{id}\n</pre>\n<p>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].</p>\n<p>The examples use basic authentication requiring a xCALLY username and password.</p>\n<h2>Security and Authentication</h2>\n<p>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 or API Key.</p>\n<p>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 API Key.</p>\n<h3>Basic authentication</h3>\n<p>Use the following authentication format with your username and password:\n<code>{username}:{password}</code></p>\n<p>Example:</p>\n<pre class=\"prettyprint lang-sh\">curl -u admin:password https://motion.xcally.com/api/users\n</pre>\n<h3>OAuth access token</h3>\n<p>The xCALLY API supports OAuth authorization flows.</p>\n<p>OAuth access tokens also permit client-side API requests.</p>\n<p>In your requests, specify the access token in an Authorization header as follows:\n<code>Authorization: Bearer {token}</code></p>\n<p>Example:</p>\n<pre class=\"prettyprint lang-sh\">curl -H \"Authorization: Bearer gErypPlm4dOVgGRvA1ZzMH5MQ3nLo8bo\" https://motion.xcally.com/api/users\n</pre>\n<h3>API Key</h3>\n<p>In your request, specify the API Key in apikey query parameter</p>\n<p>Example:</p>\n<pre class=\"prettyprint lang-sh\">curl https://motion.xcally.com/api/users?apikey=eyJhbGciOiJIUzUxMiIsInR5cC...\n</pre>\n<h2>Request Format</h2>\n<p>The xCALLY API is a JSON API. You must supply a <code>Content-Type: application/json</code> header in <code>PUT</code> and <code>POST</code> requests. You must set an <code>Accept: application/json</code> header on all requests. You may get a <code>text/plain</code> response in case of an error like a bad request. You should treat this as an error you need to fix.</p>\n<h2>Response Format</h2>\n<p>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.</p>\n<p>Responses may have the status codes described in the following sections.</p>\n<h3>200 range</h3>\n<p>The request was successful. The status is 200 for successful GET and PUT requests, 201 for most POST requests, and 204 for DELETE requests.</p>\n<h3>400 range</h3>\n<p>The request was not successful. The content type of the response may be <code>text/plain</code> for API-level error messages, such as when trying to call the API without SSL. The content type is <code>application/json</code> for business-level error messages because the response includes a JSON object with information about the error.</p>\n<p>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.</p>\n<h3>500 range</h3>\n<p>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 [email-masked].</p>\n<p>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.</p>\n<h2>Data Types</h2>\n<p>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.</p>\n<h2>ID integers</h2>\n<p>Most xCALLY Support resources such as queues and users are identified by the integer specified by the id attribute of API responses.</p>\n<p>The default numeric type in JavaScript, Ruby, Python, and PHP is sufficient to represent xCALLY Support ID integers.</p>\n<h2>Time stamps</h2>\n<p>Time stamps use UTC time and are formatted as ISO 8601 strings. Example: <code>2017-04-16T09:14:57Z</code></p>\n"
  },
  "template": {
    "withGenerator": false,
    "withCompare": false,
    "forceLanguage": "en"
  },
  "sampleUrl": false,
  "defaultVersion": "0.0.0",
  "apidoc": "0.3.0",
  "generator": {
    "name": "apidoc",
    "time": "2020-09-16T08:42:17.368Z",
    "url": "http://apidocjs.com",
    "version": "0.19.0"
  }
});
diff --git a/apidoc/api_project.json b/apidoc/api_project.json
index aba3934..517b095 100644
--- a/apidoc/api_project.json
+++ b/apidoc/api_project.json
@@ -1,24 +1 @@
-{
-  "name": "xCALLY Motion API",
-  "version": "2.5.3",
-  "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": "<h2>The API</h2>\n<p>This is the documentation for the xCALLY MOTION API.</p>\n<p>We make changes to the APIs from time to time. For more information, see <a href=\"https://wiki.xcallymotion.com/display/XMV/Motion+GUI\">Changelog</a>.</p>\n<p>The xCALLY MOTION API consists of several different APIs. Use the left sidebar menu to select one.</p>\n<p>The API is a JSON API. XML is not supported. To learn more, see [Working with JSON].</p>\n<p>Endpoints are documented with the HTTP method for the request and a partial resource identifier.\nExample:</p>\n<pre class=\"prettyprint lang-sh\">GET /api/users\n</pre>\n<p>Prepend your xCALLY URL to the resource identifier to get the full endpoint URL:</p>\n<pre class=\"prettyprint lang-sh\">https://motion.xcally.com/api/users\n</pre>\n<p>Curly braces, <code>{}</code>, indicate values you have to supply. Example:</p>\n<pre class=\"prettyprint lang-sh\">GET  /api/users/{id}\n</pre>\n<p>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].</p>\n<p>The examples use basic authentication requiring a xCALLY username and password.</p>\n<h2>Security and Authentication</h2>\n<p>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 or API Key.</p>\n<p>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 API Key.</p>\n<h3>Basic authentication</h3>\n<p>Use the following authentication format with your username and password:\n<code>{username}:{password}</code></p>\n<p>Example:</p>\n<pre class=\"prettyprint lang-sh\">curl -u admin:password https://motion.xcally.com/api/users\n</pre>\n<h3>OAuth access token</h3>\n<p>The xCALLY API supports OAuth authorization flows.</p>\n<p>OAuth access tokens also permit client-side API requests.</p>\n<p>In your requests, specify the access token in an Authorization header as follows:\n<code>Authorization: Bearer {token}</code></p>\n<p>Example:</p>\n<pre class=\"prettyprint lang-sh\">curl -H \"Authorization: Bearer gErypPlm4dOVgGRvA1ZzMH5MQ3nLo8bo\" https://motion.xcally.com/api/users\n</pre>\n<h3>API Key</h3>\n<p>In your request, specify the API Key in apikey query parameter</p>\n<p>Example:</p>\n<pre class=\"prettyprint lang-sh\">curl https://motion.xcally.com/api/users?apikey=eyJhbGciOiJIUzUxMiIsInR5cC...\n</pre>\n<h2>Request Format</h2>\n<p>The xCALLY API is a JSON API. You must supply a <code>Content-Type: application/json</code> header in <code>PUT</code> and <code>POST</code> requests. You must set an <code>Accept: application/json</code> header on all requests. You may get a <code>text/plain</code> response in case of an error like a bad request. You should treat this as an error you need to fix.</p>\n<h2>Response Format</h2>\n<p>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.</p>\n<p>Responses may have the status codes described in the following sections.</p>\n<h3>200 range</h3>\n<p>The request was successful. The status is 200 for successful GET and PUT requests, 201 for most POST requests, and 204 for DELETE requests.</p>\n<h3>400 range</h3>\n<p>The request was not successful. The content type of the response may be <code>text/plain</code> for API-level error messages, such as when trying to call the API without SSL. The content type is <code>application/json</code> for business-level error messages because the response includes a JSON object with information about the error.</p>\n<p>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.</p>\n<h3>500 range</h3>\n<p>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 [email-masked].</p>\n<p>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.</p>\n<h2>Data Types</h2>\n<p>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.</p>\n<h2>ID integers</h2>\n<p>Most xCALLY Support resources such as queues and users are identified by the integer specified by the id attribute of API responses.</p>\n<p>The default numeric type in JavaScript, Ruby, Python, and PHP is sufficient to represent xCALLY Support ID integers.</p>\n<h2>Time stamps</h2>\n<p>Time stamps use UTC time and are formatted as ISO 8601 strings. Example: <code>2017-04-16T09:14:57Z</code></p>\n"
-  },
-  "template": {
-    "withGenerator": false,
-    "withCompare": false,
-    "forceLanguage": "en"
-  },
-  "sampleUrl": false,
-  "defaultVersion": "0.0.0",
-  "apidoc": "0.3.0",
-  "generator": {
-    "name": "apidoc",
-    "time": "2020-09-10T09:06:14.467Z",
-    "url": "http://apidocjs.com",
-    "version": "0.24.0"
-  }
-}
+{
  "name": "xCALLY Motion API",
  "version": "2.5.3",
  "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": "<h2>The API</h2>\n<p>This is the documentation for the xCALLY MOTION API.</p>\n<p>We make changes to the APIs from time to time. For more information, see <a href=\"https://wiki.xcallymotion.com/display/XMV/Motion+GUI\">Changelog</a>.</p>\n<p>The xCALLY MOTION API consists of several different APIs. Use the left sidebar menu to select one.</p>\n<p>The API is a JSON API. XML is not supported. To learn more, see [Working with JSON].</p>\n<p>Endpoints are documented with the HTTP method for the request and a partial resource identifier.\nExample:</p>\n<pre class=\"prettyprint lang-sh\">GET /api/users\n</pre>\n<p>Prepend your xCALLY URL to the resource identifier to get the full endpoint URL:</p>\n<pre class=\"prettyprint lang-sh\">https://motion.xcally.com/api/users\n</pre>\n<p>Curly braces, <code>{}</code>, indicate values you have to supply. Example:</p>\n<pre class=\"prettyprint lang-sh\">GET  /api/users/{id}\n</pre>\n<p>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].</p>\n<p>The examples use basic authentication requiring a xCALLY username and password.</p>\n<h2>Security and Authentication</h2>\n<p>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 or API Key.</p>\n<p>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 API Key.</p>\n<h3>Basic authentication</h3>\n<p>Use the following authentication format with your username and password:\n<code>{username}:{password}</code></p>\n<p>Example:</p>\n<pre class=\"prettyprint lang-sh\">curl -u admin:password https://motion.xcally.com/api/users\n</pre>\n<h3>OAuth access token</h3>\n<p>The xCALLY API supports OAuth authorization flows.</p>\n<p>OAuth access tokens also permit client-side API requests.</p>\n<p>In your requests, specify the access token in an Authorization header as follows:\n<code>Authorization: Bearer {token}</code></p>\n<p>Example:</p>\n<pre class=\"prettyprint lang-sh\">curl -H \"Authorization: Bearer gErypPlm4dOVgGRvA1ZzMH5MQ3nLo8bo\" https://motion.xcally.com/api/users\n</pre>\n<h3>API Key</h3>\n<p>In your request, specify the API Key in apikey query parameter</p>\n<p>Example:</p>\n<pre class=\"prettyprint lang-sh\">curl https://motion.xcally.com/api/users?apikey=eyJhbGciOiJIUzUxMiIsInR5cC...\n</pre>\n<h2>Request Format</h2>\n<p>The xCALLY API is a JSON API. You must supply a <code>Content-Type: application/json</code> header in <code>PUT</code> and <code>POST</code> requests. You must set an <code>Accept: application/json</code> header on all requests. You may get a <code>text/plain</code> response in case of an error like a bad request. You should treat this as an error you need to fix.</p>\n<h2>Response Format</h2>\n<p>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.</p>\n<p>Responses may have the status codes described in the following sections.</p>\n<h3>200 range</h3>\n<p>The request was successful. The status is 200 for successful GET and PUT requests, 201 for most POST requests, and 204 for DELETE requests.</p>\n<h3>400 range</h3>\n<p>The request was not successful. The content type of the response may be <code>text/plain</code> for API-level error messages, such as when trying to call the API without SSL. The content type is <code>application/json</code> for business-level error messages because the response includes a JSON object with information about the error.</p>\n<p>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.</p>\n<h3>500 range</h3>\n<p>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 [email-masked].</p>\n<p>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.</p>\n<h2>Data Types</h2>\n<p>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.</p>\n<h2>ID integers</h2>\n<p>Most xCALLY Support resources such as queues and users are identified by the integer specified by the id attribute of API responses.</p>\n<p>The default numeric type in JavaScript, Ruby, Python, and PHP is sufficient to represent xCALLY Support ID integers.</p>\n<h2>Time stamps</h2>\n<p>Time stamps use UTC time and are formatted as ISO 8601 strings. Example: <code>2017-04-16T09:14:57Z</code></p>\n"
  },
  "template": {
    "withGenerator": false,
    "withCompare": false,
    "forceLanguage": "en"
  },
  "sampleUrl": false,
  "defaultVersion": "0.0.0",
  "apidoc": "0.3.0",
  "generator": {
    "name": "apidoc",
    "time": "2020-09-16T08:42:17.368Z",
    "url": "http://apidocjs.com",
    "version": "0.19.0"
  }
}
diff --git a/apidoc/css/style.css b/apidoc/css/style.css
old mode 100644
new mode 100755
index 3e8ff30..216a21e
--- a/apidoc/css/style.css
+++ b/apidoc/css/style.css
@@ -11,15 +11,6 @@ body, p, a, div, th, td {
   font-size: 16px;
 }
 
-@media (min-width: 1200px) {
-  body.container-fluid {
-    padding-right: 0px;
-    padding-left: 0px;
-    margin-right: 0px;
-    margin-left: 0px;
-  }
-}
-
 td.code {
   font-size: 14px;
   font-family: "Source Code Pro", monospace;
@@ -171,8 +162,34 @@ td {
 }
 
 /* ------------------------------------------------------------------------------------------
- * Request type
+ * pre / code
  * ------------------------------------------------------------------------------------------ */
+pre {
+  background-color: #292b36;
+  color: #ffffff;
+  padding: 10px;
+  border-radius: 6px;
+  position: relative;
+  margin: 10px 0 20px 0;
+  overflow-x: auto;
+}
+
+pre.prettyprint {
+  width: 100%;
+}
+
+code.language-text {
+  word-wrap: break-word;
+}
+
+pre.language-json {
+  overflow: auto;
+}
+
+pre.language-html {
+  margin: 0 0 20px 0;
+}
+
 .type {
   font-family: "Source Sans Pro", sans-serif;
   font-weight: 600;
@@ -202,6 +219,31 @@ td {
   background-color: #ed0039;
 }
 
+pre.language-api .str {
+  color: #ffffff;
+}
+
+pre.language-api .pln,
+pre.language-api .pun {
+  color: #65B042;
+}
+
+pre code {
+  display: block;
+  font-size: 14px;
+  font-family: "Source Code Pro", monospace;
+  font-style: normal;
+  font-weight: 400;
+  word-wrap: normal;
+  white-space: pre;
+}
+
+pre code.sample-request-response-json {
+  white-space: pre-wrap;
+  max-height: 500px;
+  overflow: auto;
+}
+
 /* ------------------------------------------------------------------------------------------
  * Sidenav
  * ------------------------------------------------------------------------------------------ */
diff --git a/apidoc/fonts/glyphicons-halflings-regular.svg b/apidoc/fonts/glyphicons-halflings-regular.svg
old mode 100644
new mode 100755
diff --git a/apidoc/index.html b/apidoc/index.html
old mode 100644
new mode 100755
index 82ac436..b32e412
--- a/apidoc/index.html
+++ b/apidoc/index.html
@@ -6,7 +6,7 @@
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
   <link href="vendor/bootstrap.min.css" rel="stylesheet" media="screen">
-  <link href="vendor/prism.css" rel="stylesheet" />
+  <link href="vendor/prettify.css" rel="stylesheet" media="screen">
   <link href="css/style.css" rel="stylesheet" media="screen, print">
   <link href="img/favicon.ico" rel="icon" type="image/x-icon">
   <script src="vendor/polyfill.js"></script>
@@ -44,8 +44,8 @@
     <h1>{{name}}</h1>
     {{#if description}}<h2>{{{nl2br description}}}</h2>{{/if}}
   </div>
+  {{#if template.withCompare}}
   <div class="pull-right">
-    {{#if template.withCompare}}
     <div class="btn-group">
       <button id="version" class="btn btn-lg btn-default dropdown-toggle" data-toggle="dropdown">
         <strong>{{version}}</strong>&nbsp;<span class="caret"></span>
@@ -59,12 +59,8 @@
       {{/each}}
       </ul>
     </div>
-    {{else}}
-    <div id="version" class="well well-sm">
-      <strong>{{version}}</strong>
-    </div>
-    {{/if}}
   </div>
+  {{/if}}
   <div class="clearfix"></div>
 </script>
 
@@ -107,7 +103,7 @@
 <script id="template-article" type="text/x-handlebars-template">
   <article id="api-{{article.group}}-{{article.name}}-{{article.version}}" {{#if hidden}}class="hide"{{/if}} data-group="{{article.group}}" data-name="{{article.name}}" data-version="{{article.version}}">
     <div class="pull-left">
-      <h1>{{underscoreToSpace article.groupTitle}}{{#if article.title}} - {{article.title}}{{/if}}</h1>
+      <h1>{{underscoreToSpace article.name}}{{#if article.title}} - {{article.title}}{{/if}}</h1>
     </div>
     {{#if template.withCompare}}
     <div class="pull-right">
@@ -138,7 +134,7 @@
       <p>{{{nl2br article.description}}}</p>
     {{/if}}
     <span class="type type__{{toLowerCase article.type}}">{{toLowerCase article.type}}</span>
-    <pre data-type="{{toLowerCase article.type}}"><code class="language-http">{{article.url}}</code></pre>
+    <pre class="prettyprint language-html" data-type="{{toLowerCase article.type}}"><code>{{article.url}}</code></pre>
 
     {{#if article.permission}}
       <p>
@@ -154,7 +150,6 @@
       </p>
     {{/if}}
 
-    {{!-- CODE EXAMPLES IN TABS --}}
     {{#if_gt article.examples.length compare=0}}
       <ul class="nav nav-tabs nav-tabs-examples">
         {{#each article.examples}}
@@ -167,7 +162,7 @@
       <div class="tab-content">
       {{#each article.examples}}
         <div class="tab-pane{{#if_eq @index compare=0}} active{{/if_eq}}" id="examples-{{../id}}-{{@index}}">
-          <pre data-type="{{type}}"><code class="language-{{type}}">{{content}}</code></pre>
+          <pre class="prettyprint language-{{type}}" data-type="{{type}}"><code>{{content}}</code></pre>
         </div>
       {{/each}}
       </div>
@@ -231,7 +226,7 @@
       <div class="tab-content">
       {{#each params.examples}}
         <div class="tab-pane{{#if_eq @index compare=0}} active{{/if_eq}}" id="{{../section}}-examples-{{../id}}-{{@index}}">
-        <pre data-type="{{type}}"><code class="language-{{type}}">{{reformat content type}}</code></pre>
+        <pre class="prettyprint language-{{type}}" data-type="{{type}}"><code>{{reformat content type}}</code></pre>
         </div>
       {{/each}}
       </div>
@@ -296,7 +291,7 @@
               <div class="form-group">
                 <label class="col-md-3 control-label" for="sample-request-param-field-{{field}}">{{field}}</label>
                 <div class="input-group">
-                  <input id="sample-request-param-field-{{field}}" type="{{setInputType type}}" placeholder="{{field}}" class="form-control sample-request-param" data-sample-request-param-name="{{field}}" data-sample-request-param-group="sample-request-param-{{@../index}}" {{#if optional}}data-sample-request-param-optional="true"{{/if}}>
+                  <input id="sample-request-param-field-{{field}}" type="text" placeholder="{{field}}" class="form-control sample-request-param" data-sample-request-param-name="{{field}}" data-sample-request-param-group="sample-request-param-{{@../index}}" {{#if optional}}data-sample-request-param-optional="true"{{/if}}>
                   <div class="input-group-addon">{{{type}}}</div>
                 </div>
               </div>
@@ -316,7 +311,7 @@
               {{__ "Response"}}
               <button class="btn btn-default btn-xs pull-right sample-request-clear">X</button>
             </h3>
-            <pre data-type="json"><code class="language-json sample-request-response-json"></code></pre>
+            <pre class="prettyprint language-json" data-type="json"><code class="sample-request-response-json"></code></pre>
           </div>
         </fieldset>
       </form>
@@ -356,7 +351,7 @@
       {{/if}}
     {{/if}}
 
-    <pre data-type="{{toLowerCase article.type}}"><code class="language-html">{{{showDiff article.url compare.url}}}</code></pre>
+    <pre class="prettyprint language-html" data-type="{{toLowerCase article.type}}"><code>{{{showDiff article.url compare.url}}}</code></pre>
 
     {{subTemplate "article-compare-permission" article=article compare=compare}}
 
@@ -387,19 +382,19 @@
 
       {{#if typeSame}}
         <div class="tab-pane{{#if_eq index compare=0}} active{{/if_eq}}" id="compare-examples-{{../../article.id}}-{{index}}">
-          <pre data-type="{{source.type}}"><code class="language-{{source.type}}">{{{showDiff source.content compare.content}}}</code></pre>
+          <pre class="prettyprint language-{{source.type}}" data-type="{{source.type}}"><code>{{{showDiff source.content compare.content}}}</code></pre>
         </div>
       {{/if}}
 
       {{#if typeIns}}
         <div class="tab-pane{{#if_eq index compare=0}} active{{/if_eq}}" id="compare-examples-{{../../article.id}}-{{index}}">
-          <pre data-type="{{source.type}}"><code class="language-{{source.type}}">{{{source.content}}}</code></pre>
+          <pre class="prettyprint language-{{source.type}}" data-type="{{source.type}}"><code>{{{source.content}}}</code></pre>
         </div>
       {{/if}}
 
       {{#if typeDel}}
         <div class="tab-pane{{#if_eq index compare=0}} active{{/if_eq}}" id="compare-examples-{{../../article.id}}-{{index}}">
-          <pre data-type="{{compare.type}}"><code class="language-{{source.type}}">{{{compare.content}}}</code></pre>
+          <pre class="prettyprint language-{{source.type}}" data-type="{{compare.type}}"><code>{{{compare.content}}}</code></pre>
         </div>
       {{/if}}
 
@@ -558,19 +553,19 @@
 
       {{#if typeSame}}
         <div class="tab-pane{{#if_eq index compare=0}} active{{/if_eq}}" id="{{../../section}}-compare-examples-{{../../article.id}}-{{index}}">
-          <pre data-type="{{source.type}}"><code class="language-{{source.type}}">{{{showDiff source.content compare.content}}}</code></pre>
+          <pre class="prettyprint language-{{source.type}}" data-type="{{source.type}}"><code>{{{showDiff source.content compare.content}}}</code></pre>
         </div>
       {{/if}}
 
       {{#if typeIns}}
         <div class="tab-pane{{#if_eq index compare=0}} active{{/if_eq}}" id="{{../../section}}-compare-examples-{{../../article.id}}-{{index}}">
-          <pre data-type="{{source.type}}"><code class="language-{{source.type}}">{{{source.content}}}</code></pre>
+          <pre class="prettyprint language-{{source.type}}" data-type="{{source.type}}"><code>{{{source.content}}}</code></pre>
         </div>
       {{/if}}
 
       {{#if typeDel}}
         <div class="tab-pane{{#if_eq index compare=0}} active{{/if_eq}}" id="{{../../section}}-compare-examples-{{../../article.id}}-{{index}}">
-          <pre data-type="{{compare.type}}"><code class="language-{{source.type}}">{{{compare.content}}}</code></pre>
+          <pre class="prettyprint language-{{source.type}}" data-type="{{compare.type}}"><code>{{{compare.content}}}</code></pre>
         </div>
       {{/if}}
     {{/each_compare_title}}
diff --git a/apidoc/locales/ca.js b/apidoc/locales/ca.js
old mode 100644
new mode 100755
diff --git a/apidoc/locales/cs.js b/apidoc/locales/cs.js
old mode 100644
new mode 100755
diff --git a/apidoc/locales/de.js b/apidoc/locales/de.js
old mode 100644
new mode 100755
diff --git a/apidoc/locales/es.js b/apidoc/locales/es.js
old mode 100644
new mode 100755
diff --git a/apidoc/locales/fr.js b/apidoc/locales/fr.js
old mode 100644
new mode 100755
diff --git a/apidoc/locales/it.js b/apidoc/locales/it.js
old mode 100644
new mode 100755
diff --git a/apidoc/locales/locale.js b/apidoc/locales/locale.js
old mode 100644
new mode 100755
diff --git a/apidoc/locales/nl.js b/apidoc/locales/nl.js
old mode 100644
new mode 100755
diff --git a/apidoc/locales/pl.js b/apidoc/locales/pl.js
old mode 100644
new mode 100755
diff --git a/apidoc/locales/pt_br.js b/apidoc/locales/pt_br.js
old mode 100644
new mode 100755
diff --git a/apidoc/locales/ro.js b/apidoc/locales/ro.js
old mode 100644
new mode 100755
diff --git a/apidoc/locales/ru.js b/apidoc/locales/ru.js
old mode 100644
new mode 100755
diff --git a/apidoc/locales/tr.js b/apidoc/locales/tr.js
old mode 100644
new mode 100755
diff --git a/apidoc/locales/vi.js b/apidoc/locales/vi.js
old mode 100644
new mode 100755
diff --git a/apidoc/locales/zh.js b/apidoc/locales/zh.js
old mode 100644
new mode 100755
diff --git a/apidoc/locales/zh_cn.js b/apidoc/locales/zh_cn.js
old mode 100644
new mode 100755
diff --git a/apidoc/main.js b/apidoc/main.js
old mode 100644
new mode 100755
index e2128f6..8adc385
--- a/apidoc/main.js
+++ b/apidoc/main.js
@@ -8,13 +8,11 @@ require.config({
         locales: './locales/locale',
         lodash: './vendor/lodash.custom.min',
         pathToRegexp: './vendor/path-to-regexp/index',
-        prismjs: './vendor/prism',
+        prettify: './vendor/prettify/prettify',
         semver: './vendor/semver.min',
         utilsSampleRequest: './utils/send_sample_request',
         webfontloader: './vendor/webfontloader',
-        list: './vendor/list.min',
-        apiData: './api_data',
-        apiProject: './api_project',
+        list: './vendor/list.min'
     },
     shim: {
         bootstrap: {
@@ -30,12 +28,12 @@ require.config({
             deps: ['jquery', 'handlebars'],
             exports: 'Handlebars'
         },
-        prismjs: {
-            exports: 'Prism'
-        },
+        prettify: {
+            exports: 'prettyPrint'
+        }
     },
     urlArgs: 'v=' + (new Date()).getTime(),
-    waitSeconds: 150
+    waitSeconds: 15
 });
 
 require([
@@ -43,34 +41,20 @@ require([
     'lodash',
     'locales',
     'handlebarsExtended',
-    'apiProject',
-    'apiData',
-    'prismjs',
+    './api_project.js',
+    './api_data.js',
+    'prettify',
     'utilsSampleRequest',
     'semver',
     'webfontloader',
     'bootstrap',
     'pathToRegexp',
     'list'
-], function($, _, locale, Handlebars, apiProject, apiData, Prism, sampleRequest, semver, WebFont) {
+], function($, _, locale, Handlebars, apiProject, apiData, prettyPrint, sampleRequest, semver, WebFont) {
 
-    // Load google web fonts.
-    WebFont.load({
-        active: function() {
-            // Only init after fonts are loaded.
-            init($, _, locale, Handlebars, apiProject, apiData, Prism, sampleRequest, semver);
-        },
-        inactive: function() {
-            // Run init, even if loading fonts fails
-            init($, _, locale, Handlebars, apiProject, apiData, Prism, sampleRequest, semver);
-        },
-        google: {
-            families: ['Source Code Pro', 'Source Sans Pro:n4,n6,n7']
-        }
-    });
-});
+    // load google web fonts
+    loadGoogleFontCss();
 
-function init($, _, locale, Handlebars, apiProject, apiData, Prism, sampleRequest, semver) {
     var api = apiData.api;
 
     //
@@ -401,7 +385,7 @@ function init($, _, locale, Handlebars, apiProject, apiData, Prism, sampleReques
     $('#sections').append( content );
 
     // Bootstrap Scrollspy
-    $(this).scrollspy({ target: '#scrollingNav' });
+    $(this).scrollspy({ target: '#scrollingNav', offset: 18 });
 
     // Content-Scroll on Navigation click.
     $('.sidenav').find('a').on('click', function(e) {
@@ -412,6 +396,13 @@ function init($, _, locale, Handlebars, apiProject, apiData, Prism, sampleReques
         window.location.hash = $(this).attr('href');
     });
 
+    // Quickjump on Pageload to hash position.
+    if(window.location.hash) {
+        var id = window.location.hash;
+        if ($(id).length > 0)
+            $('html,body').animate({ scrollTop: parseInt($(id).offset().top) }, 0);
+    }
+
     /**
      * Check if Parameter (sub) List has a type Field.
      * Example: @apiSuccess          varname1 No type.
@@ -527,7 +518,6 @@ function init($, _, locale, Handlebars, apiProject, apiData, Prism, sampleReques
 
         // init modules
         sampleRequest.initDynamic();
-        Prism.highlightAll()
     }
     initDynamic();
 
@@ -538,17 +528,18 @@ function init($, _, locale, Handlebars, apiProject, apiData, Prism, sampleReques
         }
     }
 
+    // Pre- / Code-Format
+    prettyPrint();
+
     //
     // HTML-Template specific jQuery-Functions
     //
     // Change Main Version
-    function setMainVersion(selectedVersion) {
-        if (typeof(selectedVersion) === 'undefined') {
-            selectedVersion = $('#version strong').html();
-        }
-        else {
-            $('#version strong').html(selectedVersion);
-        }
+    $('#versions li.version a').on('click', function(e) {
+        e.preventDefault();
+
+        var selectedVersion = $(this).html();
+        $('#version strong').html(selectedVersion);
 
         // hide all
         $('article').addClass('hide');
@@ -584,13 +575,6 @@ function init($, _, locale, Handlebars, apiProject, apiData, Prism, sampleReques
 
         initDynamic();
         return;
-    }
-    setMainVersion();
-
-    $('#versions li.version a').on('click', function(e) {
-        e.preventDefault();
-
-        setMainVersion($(this).html());
     });
 
     // compare all article with their predecessor
@@ -608,17 +592,11 @@ function init($, _, locale, Handlebars, apiProject, apiData, Prism, sampleReques
     if ($.urlParam('compare')) {
         // URL Paramter ?compare=1 is set
         $('#compareAllWithPredecessor').trigger('click');
-    }
 
-    // Quick jump on page load to hash position.
-    // Should happen after setting the main version
-    // and after triggering the click on the compare button,
-    // as these actions modify the content
-    // and would make it jump to the wrong position or not jump at all.
-    if (window.location.hash) {
-        var id = window.location.hash;
-        if ($(id).length > 0)
-            $('html,body').animate({ scrollTop: parseInt($(id).offset().top) }, 0);
+        if (window.location.hash) {
+            var id = window.location.hash;
+            $('html,body').animate({ scrollTop: parseInt($(id).offset().top) - 18 }, 0);
+        }
     }
 
     /**
@@ -877,6 +855,21 @@ function init($, _, locale, Handlebars, apiProject, apiData, Prism, sampleReques
     }
 
     /**
+     * Load google fonts.
+     */
+    function loadGoogleFontCss() {
+        WebFont.load({
+            active: function() {
+                // Update scrollspy
+                $(window).scrollspy('refresh')
+            },
+            google: {
+                families: ['Source Code Pro', 'Source Sans Pro:n4,n6,n7']
+            }
+        });
+    }
+
+    /**
      * Return ordered entries by custom order and append not defined entries to the end.
      * @param  {String[]} elements
      * @param  {String[]} order
@@ -906,5 +899,5 @@ function init($, _, locale, Handlebars, apiProject, apiData, Prism, sampleReques
         });
         return results;
     }
-    Prism.highlightAll()
-}
+
+});
diff --git a/apidoc/utils/handlebars_helper.js b/apidoc/utils/handlebars_helper.js
old mode 100644
new mode 100755
index 14a57fc..a5d5c4f
--- a/apidoc/utils/handlebars_helper.js
+++ b/apidoc/utils/handlebars_helper.js
@@ -22,16 +22,6 @@ define([
     });
 
     /**
-     * set paramater type.
-     */
-    Handlebars.registerHelper("setInputType", function(text) {
-          if (text === "File") {
-            return "file";
-          }
-          return "text";
-    });
-
-    /**
      * start/stop timer for simple performance check.
      */
     var timer;
@@ -252,7 +242,7 @@ define([
             if( ! compare)
                 return source;
 
-            var d = diffMatchPatch.diff_main(stripHtml(compare), stripHtml(source));
+            var d = diffMatchPatch.diff_main(compare, source);
             diffMatchPatch.diff_cleanupSemantic(d);
             ds = diffMatchPatch.diff_prettyHtml(d);
             ds = ds.replace(/&para;/gm, '');
@@ -362,15 +352,6 @@ define([
       return html.join('');
     };
 
-    /**
-     * Fixes html after comparison (#506, #538, #616, #825)
-     */
-    function stripHtml(html){
-      var div = document.createElement("div");
-      div.innerHTML = html;
-      return div.textContent || div.innerText || "";
-    }
-
     // Exports
     return Handlebars;
 });
diff --git a/apidoc/utils/send_sample_request.js b/apidoc/utils/send_sample_request.js
index 4d695d1..714e6b8 100755
--- a/apidoc/utils/send_sample_request.js
+++ b/apidoc/utils/send_sample_request.js
@@ -1,8 +1,7 @@
 define([
     'jquery',
-    'lodash',
-    './utils/send_sample_request_utils'
-], function($, _, utils) {
+    'lodash'
+], function($, _) {
 
     var initDynamic = function() {
         // Button send
@@ -53,7 +52,8 @@ define([
         // create JSON dictionary of parameters
         var param = {};
         var paramType = {};
-        var bodyFormData = new FormData();
+        var bodyFormData = {};
+        var bodyFormDataType = {};
         var bodyJson = '';
         $root.find(".sample-request-param:checked").each(function(i, element) {
             var group = $(element).data("sample-request-param-group-id");
@@ -78,10 +78,8 @@ define([
                     }
                     if (contentType == "body-form-data"){
                         header['Content-Type'] = 'multipart/form-data'
-                        if (element.type == "file") {
-                        value = element.files[0];
-                      }
-                      bodyFormData.append(key,value);
+                        bodyFormData[key] = value;
+                        bodyFormDataType[key] = $(element).next().text();
                     }else {
                         param[key] = value;
                         paramType[key] = $(element).next().text();
@@ -94,48 +92,26 @@ define([
         var url = $root.find(".sample-request-url").val();
 
         //Convert {param} form to :param
-        url = utils.convertPathParams(url);
+        url = url.replace(/{/,':').replace(/}/,'');
 
         // Insert url parameter
         var pattern = pathToRegexp(url, null);
         var matches = pattern.exec(url);
         for (var i = 1; i < matches.length; i++) {
             var key = matches[i].substr(1);
-            var optional = false
-            if (key[key.length - 1] === '?') {
-                optional = true;
-                key = key.substr(0, key.length - 1);
-            }
             if (param[key] !== undefined) {
                 url = url.replace(matches[i], encodeURIComponent(param[key]));
 
                 // remove URL parameters from list
                 delete param[key];
-            } else if (optional) {
-                // if parameter is optional denoted by ending '?' in param (:param?)
-                // and no parameter is given, replace parameter with empty string instead
-                url = url.replace(matches[i], '');
-                delete param[key];
             }
         } // for
 
-        //handle nested objects and parsing fields
-        param = utils.handleNestedAndParsingFields(param, paramType);
 
         //add url search parameter
-        if (header['Content-Type'] == 'application/json') {
-            if (bodyJson) {
-                // bodyJson is set to value if request body: 'body/json' was selected and manual json was input
-                // in this case, use the given bodyJson and add other params in query string
-                url = url + encodeSearchParams(param);
-                param = bodyJson;
-            } else {
-                // bodyJson not set, but Content-Type: application/json header was set. In this case, send parameters
-                // as JSON body. First, try parsing fields of object with given paramType definition so that the json
-                // is valid against the parameter spec (e.g. Boolean params are boolean instead of strings in final json)
-                param = utils.tryParsingWithTypes(param, paramType);
-                param = JSON.stringify(param);
-            }
+        if (header['Content-Type'] == 'application/json' ){
+            url = url + encodeSearchParams(param);
+            param = bodyJson;
         }else if (header['Content-Type'] == 'multipart/form-data'){
             url = url + encodeSearchParams(param);
             param = bodyFormData;
@@ -155,11 +131,6 @@ define([
             error      : displayError
         };
 
-        if(header['Content-Type'] == 'multipart/form-data'){
-            delete ajaxRequest.headers['Content-Type'];
-            ajaxRequest.contentType=false;
-            ajaxRequest.processData=false;
-        }
         $.ajax(ajaxRequest);

diff --git a/apidoc/utils/send_sample_request_utils.js b/apidoc/utils/send_sample_request_utils.js
deleted file mode 100755
index b7bd361..0000000
--- a/apidoc/utils/send_sample_request_utils.js
+++ /dev/null
@@ -1,86 +0,0 @@
-//this block is used to make this module works with Node (CommonJS module format)
-if (typeof define !== 'function') {
-    var define = require('amdefine')(module)
-}
-
-define(['lodash'], function (_) {
-
-    function handleNestedFields(object, key, params, paramType) {
-        var attributes = key.split('.');
-        var field = attributes[0];
-        params.push(field);
-        if (attributes.length > 1 && paramType[params.join('.')] == 'Object') {
-            var nestedField = attributes.slice(1).join('.');
-            if (!object[field])
-                object[field] = {};
-            if (typeof object[field] == 'object') {
-                object[field][nestedField] = object[key];
-                delete object[key];
-                handleNestedFields(object[field], nestedField, params, paramType);
-            }
-        }
-    }
-
-    function handleNestedFieldsForAllParams(param, paramType) {
-        var result = Object.assign({}, param);
-        Object.keys(result).forEach(function (key) {
-            handleNestedFields(result, key, [], paramType);
-        });
-        return result
-    }
-
-    function handleArraysAndObjectFields(param, paramType) {
-        var result = Object.assign({}, param);
-        Object.keys(paramType).forEach(function (key) {
-            if (result[key] && (paramType[key].endsWith('[]') || paramType[key] === 'Object')) {
-                try {
-                    result[key] = JSON.parse(result[key]);
-                } catch (e) {;}
-            }
-        });
-        return result
-    }
-
-    function tryParsingAsType(object, path, type) {
-        var val = _.get(object, path);
-        if (val !== undefined) {
-            if (type === 'Boolean') {
-                if (val === 'true') {
-                    _.set(object, path, true);
-                } else if (val === 'false') {
-                    _.set(object, path, false);
-                } else {
-                    console.warn('Failed to parse object value at path [' + path + ']. Value: (' + val + '). Type: (' + type + ')');
-                }
-            } else if (type === 'Number') {
-                var parsedInt = parseInt(val, 10);
-                if (!_.isNaN(parsedInt)) {
-                    _.set(object, path, parsedInt);
-                } else {
-                    console.warn('Failed to parse object value at path [' + path + ']. Value: (' + val + '). Type: (' + type + ')');
-                }
-            }
-        }
-    }
-
-    function handleNestedAndParsingFields(param, paramType) {
-        var result = handleArraysAndObjectFields(param, paramType);
-        result = handleNestedFieldsForAllParams(result, paramType);
-        return result;
-    }
-
-    function tryParsingWithTypes(param, paramType) {
-        var result = Object.assign({}, param);
-        Object.keys(paramType).forEach(function (key) {
-            tryParsingAsType(result, key, paramType[key]);
-        });
-        return result;
-    }
-
-    // Converts path params in the {param} format to the accepted :param format, used before inserting the URL params.
-    function convertPathParams(url) {
-        return url.replace(/{(.+?)}/g, ':$1');
-    }
-
-    return {handleNestedAndParsingFields,convertPathParams,tryParsingWithTypes};
-});
diff --git a/apidoc/vendor/bootstrap.min.css b/apidoc/vendor/bootstrap.min.css
old mode 100644
new mode 100755
diff --git a/apidoc/vendor/bootstrap.min.js b/apidoc/vendor/bootstrap.min.js
old mode 100644
new mode 100755
diff --git a/apidoc/vendor/diff_match_patch.min.js b/apidoc/vendor/diff_match_patch.min.js
old mode 100644
new mode 100755
diff --git a/apidoc/vendor/handlebars.min.js b/apidoc/vendor/handlebars.min.js
old mode 100644
new mode 100755
index 21b1550..4e2aa8f
--- a/apidoc/vendor/handlebars.min.js
+++ b/apidoc/vendor/handlebars.min.js
@@ -1,9 +1,8 @@
-/**!
+/*!
 
- @license
- handlebars v4.7.6
+ handlebars v4.0.5
 
-Copyright (C) 2011-2019 by Yehuda Katz
+Copyright (C) 2011-2015 by Yehuda Katz
 
 Permission is hereby granted, free of charge, to any person obtaining a copy
 of this software and associated documentation files (the "Software"), to deal
@@ -23,7 +22,8 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 THE SOFTWARE.
 
+@license
 */
\ No newline at end of file
\ No newline at end of file
diff --git a/apidoc/vendor/jquery.min.js b/apidoc/vendor/jquery.min.js
old mode 100644
new mode 100755
diff --git a/apidoc/vendor/list.min.js b/apidoc/vendor/list.min.js
old mode 100644
new mode 100755
diff --git a/apidoc/vendor/lodash.custom.min.js b/apidoc/vendor/lodash.custom.min.js
old mode 100644
new mode 100755
index c9717c3..398b009
--- a/apidoc/vendor/lodash.custom.min.js
+++ b/apidoc/vendor/lodash.custom.min.js
@@ -1,41 +1,41 @@
 /**
  * @license
  * Lodash (Custom Build) lodash.com/license | Underscore.js 1.8.3 underscorejs.org/LICENSE
- * Build: `lodash -p -o template/vendor/lodash.custom.min.js include="get,set,groupBy,each,extend,some,isNaN" exports="amd"`
+ * Build: `lodash -p -o template/vendor/lodash.custom.min.js include="groupBy,each,extend,some" exports="amd"`
  */
-l.isArguments=Je,l.isArray=Ke,l.isArrayLike=yt,l.isBuffer=Qe,l.isFunction=jt,l.isLength=_t,l.isMap=Xe,l.isNaN=function(t){return dt(t)&&t!=+t},l.isNumber=dt,l.isObject=vt,l.isObjectLike=gt,l.isSet=Ye,l.isSymbol=At,l.isTypedArray=Ze,l.stubArray=It,l.stubFalse=Mt,l.some=function(t,e,r){var n=Ke(t)?c:P;return r&&ct(t,e,r)&&(e=Ut),n(t,Y(e,3))},l.toString=wt,l.each=bt,l.VERSION="4.17.5",typeof define=="function"&&typeof define.amd=="object"&&define.amd&& define(function(){return l})}).call(this);
\ No newline at end of file
+l.some=function(t,e,r){var n=Je(t)?c:V;return r&&ct(t,e,r)&&(e=Mt),n(t,Y(e,3))},l.toString=At,l.each=bt,l.VERSION="4.17.5",typeof define=="function"&&typeof define.amd=="object"&&define.amd&& define(function(){return l})}).call(this);
\ No newline at end of file
diff --git a/apidoc/vendor/path-to-regexp/LICENSE b/apidoc/vendor/path-to-regexp/LICENSE
old mode 100644
new mode 100755
diff --git a/apidoc/vendor/path-to-regexp/index.js b/apidoc/vendor/path-to-regexp/index.js
old mode 100644
new mode 100755
diff --git a/apidoc/vendor/polyfill.js b/apidoc/vendor/polyfill.js
old mode 100644
new mode 100755
diff --git a/apidoc/vendor/prettify.css b/apidoc/vendor/prettify.css
new file mode 100755
index 0000000..c54bf6b
--- /dev/null
+++ b/apidoc/vendor/prettify.css
@@ -0,0 +1,51 @@
+/* Pretty printing styles. Used with prettify.js. */
+/* Vim sunburst theme by David Leibovic */
+
+pre .str, code .str { color: #65B042; } /* string  - green */
+pre .kwd, code .kwd { color: #E28964; } /* keyword - dark pink */
+pre .com, code .com { color: #AEAEAE; font-style: italic; } /* comment - gray */
+pre .typ, code .typ { color: #89bdff; } /* type - light blue */
+pre .lit, code .lit { color: #3387CC; } /* literal - blue */
+pre .pun, code .pun { color: #fff; } /* punctuation - white */
+pre .pln, code .pln { color: #fff; } /* plaintext - white */
+pre .tag, code .tag { color: #89bdff; } /* html/xml tag    - light blue */
+pre .atn, code .atn { color: #bdb76b; } /* html/xml attribute name  - khaki */
+pre .atv, code .atv { color: #65B042; } /* html/xml attribute value - green */
+pre .dec, code .dec { color: #3387CC; } /* decimal - blue */
+
+pre.prettyprint, code.prettyprint {
+  background-color: #000;
+  -moz-border-radius: 8px;
+  -webkit-border-radius: 8px;
+  -o-border-radius: 8px;
+  -ms-border-radius: 8px;
+  -khtml-border-radius: 8px;
+  border-radius: 8px;
+}
+
+pre.prettyprint {
+  width: 95%;
+  margin: 1em auto;
+  padding: 1em;
+  white-space: pre-wrap;
+}
+
+
+/* Specify class=linenums on a pre to get line numbering */
+ol.linenums { margin-top: 0; margin-bottom: 0; color: #AEAEAE; } /* IE indents via margin-left */
+li.L0,li.L1,li.L2,li.L3,li.L5,li.L6,li.L7,li.L8 { list-style-type: none }
+/* Alternate shading for lines */
+li.L1,li.L3,li.L5,li.L7,li.L9 { }
+
+@media print {
+  pre .str, code .str { color: #060; }
+  pre .kwd, code .kwd { color: #006; font-weight: bold; }
+  pre .com, code .com { color: #600; font-style: italic; }
+  pre .typ, code .typ { color: #404; font-weight: bold; }
+  pre .lit, code .lit { color: #044; }
+  pre .pun, code .pun { color: #440; }
+  pre .pln, code .pln { color: #000; }
+  pre .tag, code .tag { color: #006; font-weight: bold; }
+  pre .atn, code .atn { color: #404; }
+  pre .atv, code .atv { color: #060; }
+}
diff --git a/apidoc/vendor/prettify/lang-Splus.js b/apidoc/vendor/prettify/lang-Splus.js
new file mode 100755
index 0000000..6ce16e8
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-Splus.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2012 Jeffrey B. Arnold
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+["pun",/^(?:<<?-|->>?|-|==|<=|>=|<|>|&&?|!=|\|\|?|\*|\+|\^|\/|!|%.*?%|=|~|\$|@|:{1,3}|[\[\](){};,?])/],["pln",/^(?:[A-Za-z]+[A-Za-z0-9_.]*|\.[a-zA-Z_][0-9a-zA-Z\._]*)(?![A-Za-z0-9_.])/],["str",/^`.+`/]]),["r","s","R","S","Splus"]);
diff --git a/apidoc/vendor/prettify/lang-aea.js b/apidoc/vendor/prettify/lang-aea.js
new file mode 100755
index 0000000..784ebb2
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-aea.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2009 Onno Hommes.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+null],["typ",/^(?:-?GENADR|=MINUS|2BCADR|VN|BOF|MM|-?2CADR|-?[1-6]DNADR|ADRES|BBCON|[SE]?BANK\=?|BLOCK|BNKSUM|E?CADR|COUNT\*?|2?DEC\*?|-?DNCHAN|-?DNPTR|EQUALS|ERASE|MEMORY|2?OCT|REMADR|SETLOC|SUBRO|ORG|BSS|BES|SYN|EQU|DEFINE|END)\s/,null],["lit",/^\'(?:-*(?:\w|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?)?/],["pln",/^-*(?:[!-z_]|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?/i],["pun",/^[^\w\t\n\r \xA0()\"\\\';]+/]]),["apollo","agc","aea"]);
diff --git a/apidoc/vendor/prettify/lang-agc.js b/apidoc/vendor/prettify/lang-agc.js
new file mode 100755
index 0000000..784ebb2
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-agc.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2009 Onno Hommes.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+null],["typ",/^(?:-?GENADR|=MINUS|2BCADR|VN|BOF|MM|-?2CADR|-?[1-6]DNADR|ADRES|BBCON|[SE]?BANK\=?|BLOCK|BNKSUM|E?CADR|COUNT\*?|2?DEC\*?|-?DNCHAN|-?DNPTR|EQUALS|ERASE|MEMORY|2?OCT|REMADR|SETLOC|SUBRO|ORG|BSS|BES|SYN|EQU|DEFINE|END)\s/,null],["lit",/^\'(?:-*(?:\w|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?)?/],["pln",/^-*(?:[!-z_]|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?/i],["pun",/^[^\w\t\n\r \xA0()\"\\\';]+/]]),["apollo","agc","aea"]);
diff --git a/apidoc/vendor/prettify/lang-apollo.js b/apidoc/vendor/prettify/lang-apollo.js
new file mode 100755
index 0000000..784ebb2
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-apollo.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2009 Onno Hommes.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+null],["typ",/^(?:-?GENADR|=MINUS|2BCADR|VN|BOF|MM|-?2CADR|-?[1-6]DNADR|ADRES|BBCON|[SE]?BANK\=?|BLOCK|BNKSUM|E?CADR|COUNT\*?|2?DEC\*?|-?DNCHAN|-?DNPTR|EQUALS|ERASE|MEMORY|2?OCT|REMADR|SETLOC|SUBRO|ORG|BSS|BES|SYN|EQU|DEFINE|END)\s/,null],["lit",/^\'(?:-*(?:\w|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?)?/],["pln",/^-*(?:[!-z_]|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?/i],["pun",/^[^\w\t\n\r \xA0()\"\\\';]+/]]),["apollo","agc","aea"]);
diff --git a/apidoc/vendor/prettify/lang-basic.js b/apidoc/vendor/prettify/lang-basic.js
new file mode 100755
index 0000000..2d6151d
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-basic.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2013 Peter Kofler
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.createSimpleLexer([["str",/^(?:"(?:[^\\"\r\n]|\\.)*(?:"|$))/,null,'"'],["pln",/^\s+/,null," \r\n\t\u00a0"]],[["com",/^REM[^\r\n]*/,null],["kwd",/^\b(?:AND|CLOSE|CLR|CMD|CONT|DATA|DEF ?FN|DIM|END|FOR|GET|GOSUB|GOTO|IF|INPUT|LET|LIST|LOAD|NEW|NEXT|NOT|ON|OPEN|OR|POKE|PRINT|READ|RESTORE|RETURN|RUN|SAVE|STEP|STOP|SYS|THEN|TO|VERIFY|WAIT)\b/,null],["pln",/^[A-Z][A-Z0-9]?(?:\$|%)?/i,null],["lit",/^(?:\d+(?:\.\d*)?|\.\d+)(?:e[+\-]?\d+)?/i,
+null,"0123456789"],["pun",/^.[^\s\w\.$%"]*/,null]]),["basic","cbm"]);
diff --git a/apidoc/vendor/prettify/lang-cbm.js b/apidoc/vendor/prettify/lang-cbm.js
new file mode 100755
index 0000000..2d6151d
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-cbm.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2013 Peter Kofler
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.createSimpleLexer([["str",/^(?:"(?:[^\\"\r\n]|\\.)*(?:"|$))/,null,'"'],["pln",/^\s+/,null," \r\n\t\u00a0"]],[["com",/^REM[^\r\n]*/,null],["kwd",/^\b(?:AND|CLOSE|CLR|CMD|CONT|DATA|DEF ?FN|DIM|END|FOR|GET|GOSUB|GOTO|IF|INPUT|LET|LIST|LOAD|NEW|NEXT|NOT|ON|OPEN|OR|POKE|PRINT|READ|RESTORE|RETURN|RUN|SAVE|STEP|STOP|SYS|THEN|TO|VERIFY|WAIT)\b/,null],["pln",/^[A-Z][A-Z0-9]?(?:\$|%)?/i,null],["lit",/^(?:\d+(?:\.\d*)?|\.\d+)(?:e[+\-]?\d+)?/i,
+null,"0123456789"],["pun",/^.[^\s\w\.$%"]*/,null]]),["basic","cbm"]);
diff --git a/apidoc/vendor/prettify/lang-cl.js b/apidoc/vendor/prettify/lang-cl.js
new file mode 100755
index 0000000..2f18c96
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-cl.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2008 Google Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.createSimpleLexer([["opn",/^\(+/,null,"("],["clo",/^\)+/,null,")"],["com",/^;[^\r\n]*/,null,";"],["pln",/^[\t\n\r \xA0]+/,null,"\t\n\r \u00a0"],["str",/^\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)/,null,'"']],[["kwd",/^(?:block|c[ad]+r|catch|con[ds]|def(?:ine|un)|do|eq|eql|equal|equalp|eval-when|flet|format|go|if|labels|lambda|let|load-time-value|locally|macrolet|multiple-value-call|nil|progn|progv|quote|require|return-from|setq|symbol-macrolet|t|tagbody|the|throw|unwind)\b/,
+null],["lit",/^[+\-]?(?:[0#]x[0-9a-f]+|\d+\/\d+|(?:\.\d+|\d+(?:\.\d*)?)(?:[ed][+\-]?\d+)?)/i],["lit",/^\'(?:-*(?:\w|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?)?/],["pln",/^-*(?:[a-z_]|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?/i],["pun",/^[^\w\t\n\r \xA0()\"\\\';]+/]]),"cl el lisp lsp scm ss rkt".split(" "));
diff --git a/apidoc/vendor/prettify/lang-clj.js b/apidoc/vendor/prettify/lang-clj.js
new file mode 100755
index 0000000..d1173b1
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-clj.js
@@ -0,0 +1,17 @@
+/*
+ Copyright (C) 2011 Google Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+null],["typ",/^:[0-9a-zA-Z\-]+/]]),["clj"]);
diff --git a/apidoc/vendor/prettify/lang-css.js b/apidoc/vendor/prettify/lang-css.js
new file mode 100755
index 0000000..90d175d
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-css.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2009 Google Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[ \t\r\n\f]+/,null," \t\r\n\f"]],[["str",/^\"(?:[^\n\r\f\\\"]|\\(?:\r\n?|\n|\f)|\\[\s\S])*\"/,null],["str",/^\'(?:[^\n\r\f\\\']|\\(?:\r\n?|\n|\f)|\\[\s\S])*\'/,null],["lang-css-str",/^url\(([^\)\"\']+)\)/i],["kwd",/^(?:url|rgb|\!important|@import|@page|@media|@charset|inherit)(?=[^\-\w]|$)/i,null],["lang-css-kw",/^(-?(?:[_a-z]|(?:\\[0-9a-f]+ ?))(?:[_a-z0-9\-]|\\(?:\\[0-9a-f]+ ?))*)\s*:/i],["com",/^\/\*[^*]*\*+(?:[^\/*][^*]*\*+)*\//],
+["com",/^(?:\x3c!--|--\x3e)/],["lit",/^(?:\d+|\d*\.\d+)(?:%|[a-z]+)?/i],["lit",/^#(?:[0-9a-f]{3}){1,2}\b/i],["pln",/^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i],["pun",/^[^\s\w\'\"]+/]]),["css"]);PR.registerLangHandler(PR.createSimpleLexer([],[["kwd",/^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i]]),["css-kw"]);PR.registerLangHandler(PR.createSimpleLexer([],[["str",/^[^\)\"\']+/]]),["css-str"]);
diff --git a/apidoc/vendor/prettify/lang-dart.js b/apidoc/vendor/prettify/lang-dart.js
new file mode 100755
index 0000000..da142a4
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-dart.js
@@ -0,0 +1,19 @@
+/*
+
+ Copyright (C) 2013 Google Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+["typ",/^\b(?:bool|double|Dynamic|int|num|Object|String|void)\b/i],["kwd",/^\b(?:false|null|true)\b/i],["str",/^r?[\']{3}[\s|\S]*?[^\\][\']{3}/],["str",/^r?[\"]{3}[\s|\S]*?[^\\][\"]{3}/],["str",/^r?\'(\'|(?:[^\n\r\f])*?[^\\]\')/],["str",/^r?\"(\"|(?:[^\n\r\f])*?[^\\]\")/],["typ",/^[A-Z]\w*/],["pln",/^[a-z_$][a-z0-9_]*/i],["pun",/^[~!%^&*+=|?:<>/-]/],["lit",/^\b0x[0-9a-f]+/i],["lit",/^\b\d+(?:\.\d*)?(?:e[+-]?\d+)?/i],["lit",
+/^\b\.\d+(?:e[+-]?\d+)?/i],["pun",/^[(){}\[\],.;]/]]),["dart"]);
diff --git a/apidoc/vendor/prettify/lang-el.js b/apidoc/vendor/prettify/lang-el.js
new file mode 100755
index 0000000..2f18c96
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-el.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2008 Google Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.createSimpleLexer([["opn",/^\(+/,null,"("],["clo",/^\)+/,null,")"],["com",/^;[^\r\n]*/,null,";"],["pln",/^[\t\n\r \xA0]+/,null,"\t\n\r \u00a0"],["str",/^\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)/,null,'"']],[["kwd",/^(?:block|c[ad]+r|catch|con[ds]|def(?:ine|un)|do|eq|eql|equal|equalp|eval-when|flet|format|go|if|labels|lambda|let|load-time-value|locally|macrolet|multiple-value-call|nil|progn|progv|quote|require|return-from|setq|symbol-macrolet|t|tagbody|the|throw|unwind)\b/,
+null],["lit",/^[+\-]?(?:[0#]x[0-9a-f]+|\d+\/\d+|(?:\.\d+|\d+(?:\.\d*)?)(?:[ed][+\-]?\d+)?)/i],["lit",/^\'(?:-*(?:\w|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?)?/],["pln",/^-*(?:[a-z_]|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?/i],["pun",/^[^\w\t\n\r \xA0()\"\\\';]+/]]),"cl el lisp lsp scm ss rkt".split(" "));
diff --git a/apidoc/vendor/prettify/lang-erl.js b/apidoc/vendor/prettify/lang-erl.js
new file mode 100755
index 0000000..e7da9b0
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-erl.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2013 Andrew Allen
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+["kwd",/^-[a-z_]+/],["typ",/^[A-Z_][a-zA-Z0-9_]*/],["pun",/^[.,;]/]]),["erlang","erl"]);
diff --git a/apidoc/vendor/prettify/lang-erlang.js b/apidoc/vendor/prettify/lang-erlang.js
new file mode 100755
index 0000000..e7da9b0
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-erlang.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2013 Andrew Allen
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+["kwd",/^-[a-z_]+/],["typ",/^[A-Z_][a-zA-Z0-9_]*/],["pun",/^[.,;]/]]),["erlang","erl"]);
diff --git a/apidoc/vendor/prettify/lang-fs.js b/apidoc/vendor/prettify/lang-fs.js
new file mode 100755
index 0000000..c012a3f
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-fs.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2008 Google Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+["lit",/^[+\-]?(?:0x[\da-f]+|(?:(?:\.\d+|\d+(?:\.\d*)?)(?:e[+\-]?\d+)?))/i],["pln",/^(?:[a-z_][\w']*[!?#]?|``[^\r\n\t`]*(?:``|$))/i],["pun",/^[^\t\n\r \xA0\"\'\w]+/]]),["fs","ml"]);
diff --git a/apidoc/vendor/prettify/lang-go.js b/apidoc/vendor/prettify/lang-go.js
new file mode 100755
index 0000000..1f6934a
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-go.js
@@ -0,0 +1,17 @@
+/*
+
+ Copyright (C) 2010 Google Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\r \xA0]+/,null,"\t\n\r \u00a0"],["pln",/^(?:\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)|\'(?:[^\'\\]|\\[\s\S])+(?:\'|$)|`[^`]*(?:`|$))/,null,"\"'"]],[["com",/^(?:\/\/[^\r\n]*|\/\*[\s\S]*?\*\/)/],["pln",/^(?:[^\/\"\'`]|\/(?![\/\*]))+/i]]),["go"]);
diff --git a/apidoc/vendor/prettify/lang-hs.js b/apidoc/vendor/prettify/lang-hs.js
new file mode 100755
index 0000000..2002221
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-hs.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2009 Google Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+null],["pln",/^(?:[A-Z][\w\']*\.)*[a-zA-Z][\w\']*/],["pun",/^[^\t\n\x0B\x0C\r a-zA-Z0-9\'\"]+/]]),["hs"]);
diff --git a/apidoc/vendor/prettify/lang-lasso.js b/apidoc/vendor/prettify/lang-lasso.js
new file mode 100755
index 0000000..415ca67
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-lasso.js
@@ -0,0 +1,19 @@
+/*
+
+ Copyright (C) 2013 Eric Knibbe
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\r \xA0]+/,null,"\t\n\r \u00a0"],["str",/^\'(?:[^\'\\]|\\[\s\S])*(?:\'|$)/,null,"'"],["str",/^\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)/,null,'"'],["str",/^\`[^\`]*(?:\`|$)/,null,"`"],["lit",/^0x[\da-f]+|\d+/i,null,"0123456789"],["atn",/^#\d+|[#$][a-z_][\w.]*|#![ \S]+lasso9\b/i,null,"#$"]],[["tag",/^[[\]]|<\?(?:lasso(?:script)?|=)|\?>|noprocess\b|no_square_brackets\b/i],["com",/^\/\/[^\r\n]*|\/\*[\s\S]*?\*\//],
+["typ",/^(?:array|date|decimal|duration|integer|map|pair|string|tag|xml|null|boolean|bytes|keyword|list|locale|queue|set|stack|staticarray|local|var|variable|global|data|self|inherited|currentcapture|givenblock)\b|^\.\.?/i],["pln",/^[a-z_][\w.]*(?:=\s*(?=\())?/i],["pun",/^:=|[-+*\/%=<>&|!?\\]/]]),["lasso","ls","lassoscript"]);
diff --git a/apidoc/vendor/prettify/lang-lassoscript.js b/apidoc/vendor/prettify/lang-lassoscript.js
new file mode 100755
index 0000000..415ca67
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-lassoscript.js
@@ -0,0 +1,19 @@
+/*
+
+ Copyright (C) 2013 Eric Knibbe
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\r \xA0]+/,null,"\t\n\r \u00a0"],["str",/^\'(?:[^\'\\]|\\[\s\S])*(?:\'|$)/,null,"'"],["str",/^\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)/,null,'"'],["str",/^\`[^\`]*(?:\`|$)/,null,"`"],["lit",/^0x[\da-f]+|\d+/i,null,"0123456789"],["atn",/^#\d+|[#$][a-z_][\w.]*|#![ \S]+lasso9\b/i,null,"#$"]],[["tag",/^[[\]]|<\?(?:lasso(?:script)?|=)|\?>|noprocess\b|no_square_brackets\b/i],["com",/^\/\/[^\r\n]*|\/\*[\s\S]*?\*\//],
+["typ",/^(?:array|date|decimal|duration|integer|map|pair|string|tag|xml|null|boolean|bytes|keyword|list|locale|queue|set|stack|staticarray|local|var|variable|global|data|self|inherited|currentcapture|givenblock)\b|^\.\.?/i],["pln",/^[a-z_][\w.]*(?:=\s*(?=\())?/i],["pun",/^:=|[-+*\/%=<>&|!?\\]/]]),["lasso","ls","lassoscript"]);
diff --git a/apidoc/vendor/prettify/lang-latex.js b/apidoc/vendor/prettify/lang-latex.js
new file mode 100755
index 0000000..efc758c
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-latex.js
@@ -0,0 +1,17 @@
+/*
+
+ Copyright (C) 2011 Martin S.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\r \xA0]+/,null,"\t\n\r \u00a0"],["com",/^%[^\r\n]*/,null,"%"]],[["kwd",/^\\[a-zA-Z@]+/],["kwd",/^\\./],["typ",/^[$&]/],["lit",/[+-]?(?:\.\d+|\d+(?:\.\d*)?)(cm|em|ex|in|pc|pt|bp|mm)/i],["pun",/^[{}()\[\]=]+/]]),["latex","tex"]);
diff --git a/apidoc/vendor/prettify/lang-lgt.js b/apidoc/vendor/prettify/lang-lgt.js
new file mode 100755
index 0000000..2959d75
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-lgt.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2014 Paulo Moura
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+["kwd",/^\s*:-\s(e(lse|nd(if|_(category|object|protocol)))|built_in|dynamic|synchronized|threaded)/],["typ",/^[A-Z_][a-zA-Z0-9_]*/],["pun",/^[.,;{}:^<>=\\/+*?#!-]/]]),["logtalk","lgt"]);
diff --git a/apidoc/vendor/prettify/lang-lisp.js b/apidoc/vendor/prettify/lang-lisp.js
new file mode 100755
index 0000000..2f18c96
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-lisp.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2008 Google Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.createSimpleLexer([["opn",/^\(+/,null,"("],["clo",/^\)+/,null,")"],["com",/^;[^\r\n]*/,null,";"],["pln",/^[\t\n\r \xA0]+/,null,"\t\n\r \u00a0"],["str",/^\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)/,null,'"']],[["kwd",/^(?:block|c[ad]+r|catch|con[ds]|def(?:ine|un)|do|eq|eql|equal|equalp|eval-when|flet|format|go|if|labels|lambda|let|load-time-value|locally|macrolet|multiple-value-call|nil|progn|progv|quote|require|return-from|setq|symbol-macrolet|t|tagbody|the|throw|unwind)\b/,
+null],["lit",/^[+\-]?(?:[0#]x[0-9a-f]+|\d+\/\d+|(?:\.\d+|\d+(?:\.\d*)?)(?:[ed][+\-]?\d+)?)/i],["lit",/^\'(?:-*(?:\w|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?)?/],["pln",/^-*(?:[a-z_]|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?/i],["pun",/^[^\w\t\n\r \xA0()\"\\\';]+/]]),"cl el lisp lsp scm ss rkt".split(" "));
diff --git a/apidoc/vendor/prettify/lang-ll.js b/apidoc/vendor/prettify/lang-ll.js
new file mode 100755
index 0000000..7604d96
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-ll.js
@@ -0,0 +1,17 @@
+/*
+
+ Copyright (C) 2013 Nikhil Dabas
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\r \xA0]+/,null,"\t\n\r \u00a0"],["str",/^!?\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)/,null,'"'],["com",/^;[^\r\n]*/,null,";"]],[["pln",/^[%@!](?:[-a-zA-Z$._][-a-zA-Z$._0-9]*|\d+)/],["kwd",/^[A-Za-z_][0-9A-Za-z_]*/,null],["lit",/^\d+\.\d+/],["lit",/^(?:\d+|0[xX][a-fA-F0-9]+)/],["pun",/^[()\[\]{},=*<>:]|\.\.\.$/]]),["llvm","ll"]);
diff --git a/apidoc/vendor/prettify/lang-llvm.js b/apidoc/vendor/prettify/lang-llvm.js
new file mode 100755
index 0000000..7604d96
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-llvm.js
@@ -0,0 +1,17 @@
+/*
+
+ Copyright (C) 2013 Nikhil Dabas
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\r \xA0]+/,null,"\t\n\r \u00a0"],["str",/^!?\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)/,null,'"'],["com",/^;[^\r\n]*/,null,";"]],[["pln",/^[%@!](?:[-a-zA-Z$._][-a-zA-Z$._0-9]*|\d+)/],["kwd",/^[A-Za-z_][0-9A-Za-z_]*/,null],["lit",/^\d+\.\d+/],["lit",/^(?:\d+|0[xX][a-fA-F0-9]+)/],["pun",/^[()\[\]{},=*<>:]|\.\.\.$/]]),["llvm","ll"]);
diff --git a/apidoc/vendor/prettify/lang-logtalk.js b/apidoc/vendor/prettify/lang-logtalk.js
new file mode 100755
index 0000000..2959d75
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-logtalk.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2014 Paulo Moura
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+["kwd",/^\s*:-\s(e(lse|nd(if|_(category|object|protocol)))|built_in|dynamic|synchronized|threaded)/],["typ",/^[A-Z_][a-zA-Z0-9_]*/],["pun",/^[.,;{}:^<>=\\/+*?#!-]/]]),["logtalk","lgt"]);
diff --git a/apidoc/vendor/prettify/lang-ls.js b/apidoc/vendor/prettify/lang-ls.js
new file mode 100755
index 0000000..415ca67
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-ls.js
@@ -0,0 +1,19 @@
+/*
+
+ Copyright (C) 2013 Eric Knibbe
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\r \xA0]+/,null,"\t\n\r \u00a0"],["str",/^\'(?:[^\'\\]|\\[\s\S])*(?:\'|$)/,null,"'"],["str",/^\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)/,null,'"'],["str",/^\`[^\`]*(?:\`|$)/,null,"`"],["lit",/^0x[\da-f]+|\d+/i,null,"0123456789"],["atn",/^#\d+|[#$][a-z_][\w.]*|#![ \S]+lasso9\b/i,null,"#$"]],[["tag",/^[[\]]|<\?(?:lasso(?:script)?|=)|\?>|noprocess\b|no_square_brackets\b/i],["com",/^\/\/[^\r\n]*|\/\*[\s\S]*?\*\//],
+["typ",/^(?:array|date|decimal|duration|integer|map|pair|string|tag|xml|null|boolean|bytes|keyword|list|locale|queue|set|stack|staticarray|local|var|variable|global|data|self|inherited|currentcapture|givenblock)\b|^\.\.?/i],["pln",/^[a-z_][\w.]*(?:=\s*(?=\())?/i],["pun",/^:=|[-+*\/%=<>&|!?\\]/]]),["lasso","ls","lassoscript"]);
diff --git a/apidoc/vendor/prettify/lang-lsp.js b/apidoc/vendor/prettify/lang-lsp.js
new file mode 100755
index 0000000..2f18c96
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-lsp.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2008 Google Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.createSimpleLexer([["opn",/^\(+/,null,"("],["clo",/^\)+/,null,")"],["com",/^;[^\r\n]*/,null,";"],["pln",/^[\t\n\r \xA0]+/,null,"\t\n\r \u00a0"],["str",/^\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)/,null,'"']],[["kwd",/^(?:block|c[ad]+r|catch|con[ds]|def(?:ine|un)|do|eq|eql|equal|equalp|eval-when|flet|format|go|if|labels|lambda|let|load-time-value|locally|macrolet|multiple-value-call|nil|progn|progv|quote|require|return-from|setq|symbol-macrolet|t|tagbody|the|throw|unwind)\b/,
+null],["lit",/^[+\-]?(?:[0#]x[0-9a-f]+|\d+\/\d+|(?:\.\d+|\d+(?:\.\d*)?)(?:[ed][+\-]?\d+)?)/i],["lit",/^\'(?:-*(?:\w|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?)?/],["pln",/^-*(?:[a-z_]|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?/i],["pun",/^[^\w\t\n\r \xA0()\"\\\';]+/]]),"cl el lisp lsp scm ss rkt".split(" "));
diff --git a/apidoc/vendor/prettify/lang-lua.js b/apidoc/vendor/prettify/lang-lua.js
new file mode 100755
index 0000000..afb2901
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-lua.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2008 Google Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\r \xA0]+/,null,"\t\n\r \u00a0"],["str",/^(?:\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)|\'(?:[^\'\\]|\\[\s\S])*(?:\'|$))/,null,"\"'"]],[["com",/^--(?:\[(=*)\[[\s\S]*?(?:\]\1\]|$)|[^\r\n]*)/],["str",/^\[(=*)\[[\s\S]*?(?:\]\1\]|$)/],["kwd",/^(?:and|break|do|else|elseif|end|false|for|function|if|in|local|nil|not|or|repeat|return|then|true|until|while)\b/,null],["lit",/^[+-]?(?:0x[\da-f]+|(?:(?:\.\d+|\d+(?:\.\d*)?)(?:e[+\-]?\d+)?))/i],
+["pln",/^[a-z_]\w*/i],["pun",/^[^\w\t\n\r \xA0][^\w\t\n\r \xA0\"\'\-\+=]*/]]),["lua"]);
diff --git a/apidoc/vendor/prettify/lang-matlab.js b/apidoc/vendor/prettify/lang-matlab.js
new file mode 100755
index 0000000..a0522a5
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-matlab.js
@@ -0,0 +1,29 @@
+/*
+
+ Copyright (c) 2013 by Amro <[email-masked]>
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ THE SOFTWARE.
+*/
+/^'/,null]];
+a.registerLangHandler(a.createSimpleLexer([],[[a.PR_KEYWORD,/^\b(?:break|case|catch|classdef|continue|else|elseif|end|for|function|global|if|otherwise|parfor|persistent|return|spmd|switch|try|while)\b/,null],["const",/^\b(?:true|false|inf|Inf|nan|NaN|eps|pi|ans|nargin|nargout|varargin|varargout)\b/,null],[a.PR_TYPE,/^\b(?:cell|struct|char|double|single|logical|u?int(?:8|16|32|64)|sparse)\b/,null],["fun",/^\b(?:abs|accumarray|acos(?:d|h)?|acot(?:d|h)?|acsc(?:d|h)?|actxcontrol(?:list|select)?|actxGetRunningServer|actxserver|addlistener|addpath|addpref|addtodate|airy|align|alim|all|allchild|alpha|alphamap|amd|ancestor|and|angle|annotation|any|area|arrayfun|asec(?:d|h)?|asin(?:d|h)?|assert|assignin|atan(?:2|d|h)?|audiodevinfo|audioplayer|audiorecorder|aufinfo|auread|autumn|auwrite|avifile|aviinfo|aviread|axes|axis|balance|bar(?:3|3h|h)?|base2dec|beep|BeginInvoke|bench|bessel(?:h|i|j|k|y)|beta|betainc|betaincinv|betaln|bicg|bicgstab|bicgstabl|bin2dec|bitand|bitcmp|bitget|bitmax|bitnot|bitor|bitset|bitshift|bitxor|blanks|blkdiag|bone|box|brighten|brush|bsxfun|builddocsearchdb|builtin|bvp4c|bvp5c|bvpget|bvpinit|bvpset|bvpxtend|calendar|calllib|callSoapService|camdolly|cameratoolbar|camlight|camlookat|camorbit|campan|campos|camproj|camroll|camtarget|camup|camva|camzoom|cart2pol|cart2sph|cast|cat|caxis|cd|cdf2rdf|cdfepoch|cdfinfo|cdflib(?:.(?:close|closeVar|computeEpoch|computeEpoch16|create|createAttr|createVar|delete|deleteAttr|deleteAttrEntry|deleteAttrgEntry|deleteVar|deleteVarRecords|epoch16Breakdown|epochBreakdown|getAttrEntry|getAttrgEntry|getAttrMaxEntry|getAttrMaxgEntry|getAttrName|getAttrNum|getAttrScope|getCacheSize|getChecksum|getCompression|getCompressionCacheSize|getConstantNames|getConstantValue|getCopyright|getFileBackward|getFormat|getLibraryCopyright|getLibraryVersion|getMajority|getName|getNumAttrEntries|getNumAttrgEntries|getNumAttributes|getNumgAttributes|getReadOnlyMode|getStageCacheSize|getValidate|getVarAllocRecords|getVarBlockingFactor|getVarCacheSize|getVarCompression|getVarData|getVarMaxAllocRecNum|getVarMaxWrittenRecNum|getVarName|getVarNum|getVarNumRecsWritten|getVarPadValue|getVarRecordData|getVarReservePercent|getVarsMaxWrittenRecNum|getVarSparseRecords|getVersion|hyperGetVarData|hyperPutVarData|inquire|inquireAttr|inquireAttrEntry|inquireAttrgEntry|inquireVar|open|putAttrEntry|putAttrgEntry|putVarData|putVarRecordData|renameAttr|renameVar|setCacheSize|setChecksum|setCompression|setCompressionCacheSize|setFileBackward|setFormat|setMajority|setReadOnlyMode|setStageCacheSize|setValidate|setVarAllocBlockRecords|setVarBlockingFactor|setVarCacheSize|setVarCompression|setVarInitialRecs|setVarPadValue|SetVarReservePercent|setVarsCacheSize|setVarSparseRecords))?|cdfread|cdfwrite|ceil|cell2mat|cell2struct|celldisp|cellfun|cellplot|cellstr|cgs|checkcode|checkin|checkout|chol|cholinc|cholupdate|circshift|cla|clabel|class|clc|clear|clearvars|clf|clipboard|clock|close|closereq|cmopts|cmpermute|cmunique|colamd|colon|colorbar|colordef|colormap|colormapeditor|colperm|Combine|comet|comet3|commandhistory|commandwindow|compan|compass|complex|computer|cond|condeig|condest|coneplot|conj|containers.Map|contour(?:3|c|f|slice)?|contrast|conv|conv2|convhull|convhulln|convn|cool|copper|copyfile|copyobj|corrcoef|cos(?:d|h)?|cot(?:d|h)?|cov|cplxpair|cputime|createClassFromWsdl|createSoapMessage|cross|csc(?:d|h)?|csvread|csvwrite|ctranspose|cumprod|cumsum|cumtrapz|curl|customverctrl|cylinder|daqread|daspect|datacursormode|datatipinfo|date|datenum|datestr|datetick|datevec|dbclear|dbcont|dbdown|dblquad|dbmex|dbquit|dbstack|dbstatus|dbstep|dbstop|dbtype|dbup|dde23|ddeget|ddesd|ddeset|deal|deblank|dec2base|dec2bin|dec2hex|decic|deconv|del2|delaunay|delaunay3|delaunayn|DelaunayTri|delete|demo|depdir|depfun|det|detrend|deval|diag|dialog|diary|diff|diffuse|dir|disp|display|dither|divergence|dlmread|dlmwrite|dmperm|doc|docsearch|dos|dot|dragrect|drawnow|dsearch|dsearchn|dynamicprops|echo|echodemo|edit|eig|eigs|ellipj|ellipke|ellipsoid|empty|enableNETfromNetworkDrive|enableservice|EndInvoke|enumeration|eomday|eq|erf|erfc|erfcinv|erfcx|erfinv|error|errorbar|errordlg|etime|etree|etreeplot|eval|evalc|evalin|event.(?:EventData|listener|PropertyEvent|proplistener)|exifread|exist|exit|exp|expint|expm|expm1|export2wsdlg|eye|ezcontour|ezcontourf|ezmesh|ezmeshc|ezplot|ezplot3|ezpolar|ezsurf|ezsurfc|factor|factorial|fclose|feather|feature|feof|ferror|feval|fft|fft2|fftn|fftshift|fftw|fgetl|fgets|fieldnames|figure|figurepalette|fileattrib|filebrowser|filemarker|fileparts|fileread|filesep|fill|fill3|filter|filter2|find|findall|findfigs|findobj|findstr|finish|fitsdisp|fitsinfo|fitsread|fitswrite|fix|flag|flipdim|fliplr|flipud|floor|flow|fminbnd|fminsearch|fopen|format|fplot|fprintf|frame2im|fread|freqspace|frewind|fscanf|fseek|ftell|FTP|full|fullfile|func2str|functions|funm|fwrite|fzero|gallery|gamma|gammainc|gammaincinv|gammaln|gca|gcbf|gcbo|gcd|gcf|gco|ge|genpath|genvarname|get|getappdata|getenv|getfield|getframe|getpixelposition|getpref|ginput|gmres|gplot|grabcode|gradient|gray|graymon|grid|griddata(?:3|n)?|griddedInterpolant|gsvd|gt|gtext|guidata|guide|guihandles|gunzip|gzip|h5create|h5disp|h5info|h5read|h5readatt|h5write|h5writeatt|hadamard|handle|hankel|hdf|hdf5|hdf5info|hdf5read|hdf5write|hdfinfo|hdfread|hdftool|help|helpbrowser|helpdesk|helpdlg|helpwin|hess|hex2dec|hex2num|hgexport|hggroup|hgload|hgsave|hgsetget|hgtransform|hidden|hilb|hist|histc|hold|home|horzcat|hostid|hot|hsv|hsv2rgb|hypot|ichol|idivide|ifft|ifft2|ifftn|ifftshift|ilu|im2frame|im2java|imag|image|imagesc|imapprox|imfinfo|imformats|import|importdata|imread|imwrite|ind2rgb|ind2sub|inferiorto|info|inline|inmem|inpolygon|input|inputdlg|inputname|inputParser|inspect|instrcallback|instrfind|instrfindall|int2str|integral(?:2|3)?|interp(?:1|1q|2|3|ft|n)|interpstreamspeed|intersect|intmax|intmin|inv|invhilb|ipermute|isa|isappdata|iscell|iscellstr|ischar|iscolumn|isdir|isempty|isequal|isequaln|isequalwithequalnans|isfield|isfinite|isfloat|isglobal|ishandle|ishghandle|ishold|isinf|isinteger|isjava|iskeyword|isletter|islogical|ismac|ismatrix|ismember|ismethod|isnan|isnumeric|isobject|isocaps|isocolors|isonormals|isosurface|ispc|ispref|isprime|isprop|isreal|isrow|isscalar|issorted|isspace|issparse|isstr|isstrprop|isstruct|isstudent|isunix|isvarname|isvector|javaaddpath|javaArray|javachk|javaclasspath|javacomponent|javaMethod|javaMethodEDT|javaObject|javaObjectEDT|javarmpath|jet|keyboard|kron|lasterr|lasterror|lastwarn|lcm|ldivide|ldl|le|legend|legendre|length|libfunctions|libfunctionsview|libisloaded|libpointer|libstruct|license|light|lightangle|lighting|lin2mu|line|lines|linkaxes|linkdata|linkprop|linsolve|linspace|listdlg|listfonts|load|loadlibrary|loadobj|log|log10|log1p|log2|loglog|logm|logspace|lookfor|lower|ls|lscov|lsqnonneg|lsqr|lt|lu|luinc|magic|makehgtform|mat2cell|mat2str|material|matfile|matlab.io.MatFile|matlab.mixin.(?:Copyable|Heterogeneous(?:.getDefaultScalarElement)?)|matlabrc|matlabroot|max|maxNumCompThreads|mean|median|membrane|memmapfile|memory|menu|mesh|meshc|meshgrid|meshz|meta.(?:class(?:.fromName)?|DynamicProperty|EnumeratedValue|event|MetaData|method|package(?:.(?:fromName|getAllPackages))?|property)|metaclass|methods|methodsview|mex(?:.getCompilerConfigurations)?|MException|mexext|mfilename|min|minres|minus|mislocked|mkdir|mkpp|mldivide|mlint|mlintrpt|mlock|mmfileinfo|mmreader|mod|mode|more|move|movefile|movegui|movie|movie2avi|mpower|mrdivide|msgbox|mtimes|mu2lin|multibandread|multibandwrite|munlock|namelengthmax|nargchk|narginchk|nargoutchk|native2unicode|nccreate|ncdisp|nchoosek|ncinfo|ncread|ncreadatt|ncwrite|ncwriteatt|ncwriteschema|ndgrid|ndims|ne|NET(?:.(?:addAssembly|Assembly|convertArray|createArray|createGeneric|disableAutoRelease|enableAutoRelease|GenericClass|invokeGenericMethod|NetException|setStaticProperty))?|netcdf.(?:abort|close|copyAtt|create|defDim|defGrp|defVar|defVarChunking|defVarDeflate|defVarFill|defVarFletcher32|delAtt|endDef|getAtt|getChunkCache|getConstant|getConstantNames|getVar|inq|inqAtt|inqAttID|inqAttName|inqDim|inqDimID|inqDimIDs|inqFormat|inqGrpName|inqGrpNameFull|inqGrpParent|inqGrps|inqLibVers|inqNcid|inqUnlimDims|inqVar|inqVarChunking|inqVarDeflate|inqVarFill|inqVarFletcher32|inqVarID|inqVarIDs|open|putAtt|putVar|reDef|renameAtt|renameDim|renameVar|setChunkCache|setDefaultFormat|setFill|sync)|newplot|nextpow2|nnz|noanimate|nonzeros|norm|normest|not|notebook|now|nthroot|null|num2cell|num2hex|num2str|numel|nzmax|ode(?:113|15i|15s|23|23s|23t|23tb|45)|odeget|odeset|odextend|onCleanup|ones|open|openfig|opengl|openvar|optimget|optimset|or|ordeig|orderfields|ordqz|ordschur|orient|orth|pack|padecoef|pagesetupdlg|pan|pareto|parseSoapResponse|pascal|patch|path|path2rc|pathsep|pathtool|pause|pbaspect|pcg|pchip|pcode|pcolor|pdepe|pdeval|peaks|perl|perms|permute|pie|pink|pinv|planerot|playshow|plot|plot3|plotbrowser|plotedit|plotmatrix|plottools|plotyy|plus|pol2cart|polar|poly|polyarea|polyder|polyeig|polyfit|polyint|polyval|polyvalm|pow2|power|ppval|prefdir|preferences|primes|print|printdlg|printopt|printpreview|prod|profile|profsave|propedit|propertyeditor|psi|publish|PutCharArray|PutFullMatrix|PutWorkspaceData|pwd|qhull|qmr|qr|qrdelete|qrinsert|qrupdate|quad|quad2d|quadgk|quadl|quadv|questdlg|quit|quiver|quiver3|qz|rand|randi|randn|randperm|RandStream(?:.(?:create|getDefaultStream|getGlobalStream|list|setDefaultStream|setGlobalStream))?|rank|rat|rats|rbbox|rcond|rdivide|readasync|real|reallog|realmax|realmin|realpow|realsqrt|record|rectangle|rectint|recycle|reducepatch|reducevolume|refresh|refreshdata|regexp|regexpi|regexprep|regexptranslate|rehash|rem|Remove|RemoveAll|repmat|reset|reshape|residue|restoredefaultpath|rethrow|rgb2hsv|rgb2ind|rgbplot|ribbon|rmappdata|rmdir|rmfield|rmpath|rmpref|rng|roots|rose|rosser|rot90|rotate|rotate3d|round|rref|rsf2csf|run|save|saveas|saveobj|savepath|scatter|scatter3|schur|sec|secd|sech|selectmoveresize|semilogx|semilogy|sendmail|serial|set|setappdata|setdiff|setenv|setfield|setpixelposition|setpref|setstr|setxor|shading|shg|shiftdim|showplottool|shrinkfaces|sign|sin(?:d|h)?|size|slice|smooth3|snapnow|sort|sortrows|sound|soundsc|spalloc|spaugment|spconvert|spdiags|specular|speye|spfun|sph2cart|sphere|spinmap|spline|spones|spparms|sprand|sprandn|sprandsym|sprank|spring|sprintf|spy|sqrt|sqrtm|squeeze|ss2tf|sscanf|stairs|startup|std|stem|stem3|stopasync|str2double|str2func|str2mat|str2num|strcat|strcmp|strcmpi|stream2|stream3|streamline|streamparticles|streamribbon|streamslice|streamtube|strfind|strjust|strmatch|strncmp|strncmpi|strread|strrep|strtok|strtrim|struct2cell|structfun|strvcat|sub2ind|subplot|subsasgn|subsindex|subspace|subsref|substruct|subvolume|sum|summer|superclasses|superiorto|support|surf|surf2patch|surface|surfc|surfl|surfnorm|svd|svds|swapbytes|symamd|symbfact|symmlq|symrcm|symvar|system|tan(?:d|h)?|tar|tempdir|tempname|tetramesh|texlabel|text|textread|textscan|textwrap|tfqmr|throw|tic|Tiff(?:.(?:getTagNames|getVersion))?|timer|timerfind|timerfindall|times|timeseries|title|toc|todatenum|toeplitz|toolboxdir|trace|transpose|trapz|treelayout|treeplot|tril|trimesh|triplequad|triplot|TriRep|TriScatteredInterp|trisurf|triu|tscollection|tsearch|tsearchn|tstool|type|typecast|uibuttongroup|uicontextmenu|uicontrol|uigetdir|uigetfile|uigetpref|uiimport|uimenu|uiopen|uipanel|uipushtool|uiputfile|uiresume|uisave|uisetcolor|uisetfont|uisetpref|uistack|uitable|uitoggletool|uitoolbar|uiwait|uminus|undocheckout|unicode2native|union|unique|unix|unloadlibrary|unmesh|unmkpp|untar|unwrap|unzip|uplus|upper|urlread|urlwrite|usejava|userpath|validateattributes|validatestring|vander|var|vectorize|ver|verctrl|verLessThan|version|vertcat|VideoReader(?:.isPlatformSupported)?|VideoWriter(?:.getProfiles)?|view|viewmtx|visdiff|volumebounds|voronoi|voronoin|wait|waitbar|waitfor|waitforbuttonpress|warndlg|warning|waterfall|wavfinfo|wavplay|wavread|wavrecord|wavwrite|web|weekday|what|whatsnew|which|whitebg|who|whos|wilkinson|winopen|winqueryreg|winter|wk1finfo|wk1read|wk1write|workspace|xlabel|xlim|xlsfinfo|xlsread|xlswrite|xmlread|xmlwrite|xor|xslt|ylabel|ylim|zeros|zip|zlabel|zlim|zoom)\b/,null],
+null],["fun_tbx",/^\b(?:adapthisteq|analyze75info|analyze75read|applycform|applylut|axes2pix|bestblk|blockproc|bwarea|bwareaopen|bwboundaries|bwconncomp|bwconvhull|bwdist|bwdistgeodesic|bweuler|bwhitmiss|bwlabel|bwlabeln|bwmorph|bwpack|bwperim|bwselect|bwtraceboundary|bwulterode|bwunpack|checkerboard|col2im|colfilt|conndef|convmtx2|corner|cornermetric|corr2|cp2tform|cpcorr|cpselect|cpstruct2pairs|dct2|dctmtx|deconvblind|deconvlucy|deconvreg|deconvwnr|decorrstretch|demosaic|dicom(?:anon|dict|info|lookup|read|uid|write)|edge|edgetaper|entropy|entropyfilt|fan2para|fanbeam|findbounds|fliptform|freqz2|fsamp2|fspecial|ftrans2|fwind1|fwind2|getheight|getimage|getimagemodel|getline|getneighbors|getnhood|getpts|getrangefromclass|getrect|getsequence|gray2ind|graycomatrix|graycoprops|graydist|grayslice|graythresh|hdrread|hdrwrite|histeq|hough|houghlines|houghpeaks|iccfind|iccread|iccroot|iccwrite|idct2|ifanbeam|im2bw|im2col|im2double|im2int16|im2java2d|im2single|im2uint16|im2uint8|imabsdiff|imadd|imadjust|ImageAdapter|imageinfo|imagemodel|imapplymatrix|imattributes|imbothat|imclearborder|imclose|imcolormaptool|imcomplement|imcontour|imcontrast|imcrop|imdilate|imdisplayrange|imdistline|imdivide|imellipse|imerode|imextendedmax|imextendedmin|imfill|imfilter|imfindcircles|imfreehand|imfuse|imgca|imgcf|imgetfile|imhandles|imhist|imhmax|imhmin|imimposemin|imlincomb|imline|immagbox|immovie|immultiply|imnoise|imopen|imoverview|imoverviewpanel|impixel|impixelinfo|impixelinfoval|impixelregion|impixelregionpanel|implay|impoint|impoly|impositionrect|improfile|imputfile|impyramid|imreconstruct|imrect|imregconfig|imregionalmax|imregionalmin|imregister|imresize|imroi|imrotate|imsave|imscrollpanel|imshow|imshowpair|imsubtract|imtool|imtophat|imtransform|imview|ind2gray|ind2rgb|interfileinfo|interfileread|intlut|ippl|iptaddcallback|iptcheckconn|iptcheckhandle|iptcheckinput|iptcheckmap|iptchecknargin|iptcheckstrs|iptdemos|iptgetapi|iptGetPointerBehavior|iptgetpref|ipticondir|iptnum2ordinal|iptPointerManager|iptprefs|iptremovecallback|iptSetPointerBehavior|iptsetpref|iptwindowalign|iradon|isbw|isflat|isgray|isicc|isind|isnitf|isrgb|isrset|lab2double|lab2uint16|lab2uint8|label2rgb|labelmatrix|makecform|makeConstrainToRectFcn|makehdr|makelut|makeresampler|maketform|mat2gray|mean2|medfilt2|montage|nitfinfo|nitfread|nlfilter|normxcorr2|ntsc2rgb|openrset|ordfilt2|otf2psf|padarray|para2fan|phantom|poly2mask|psf2otf|qtdecomp|qtgetblk|qtsetblk|radon|rangefilt|reflect|regionprops|registration.metric.(?:MattesMutualInformation|MeanSquares)|registration.optimizer.(?:OnePlusOneEvolutionary|RegularStepGradientDescent)|rgb2gray|rgb2ntsc|rgb2ycbcr|roicolor|roifill|roifilt2|roipoly|rsetwrite|std2|stdfilt|strel|stretchlim|subimage|tformarray|tformfwd|tforminv|tonemap|translate|truesize|uintlut|viscircles|warp|watershed|whitepoint|wiener2|xyz2double|xyz2uint16|ycbcr2rgb)\b/,
+null],["fun_tbx",/^\b(?:bintprog|color|fgoalattain|fminbnd|fmincon|fminimax|fminsearch|fminunc|fseminf|fsolve|fzero|fzmult|gangstr|ktrlink|linprog|lsqcurvefit|lsqlin|lsqnonlin|lsqnonneg|optimget|optimset|optimtool|quadprog)\b/,null],["ident",/^[a-zA-Z][a-zA-Z0-9_]*(?:\.[a-zA-Z][a-zA-Z0-9_]*)*/,null]]),["matlab-identifiers"]);a.registerLangHandler(a.createSimpleLexer([],d),["matlab-operators"]);a.registerLangHandler(a.createSimpleLexer(b,c),["matlab"]);
diff --git a/apidoc/vendor/prettify/lang-ml.js b/apidoc/vendor/prettify/lang-ml.js
new file mode 100755
index 0000000..c012a3f
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-ml.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2008 Google Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+["lit",/^[+\-]?(?:0x[\da-f]+|(?:(?:\.\d+|\d+(?:\.\d*)?)(?:e[+\-]?\d+)?))/i],["pln",/^(?:[a-z_][\w']*[!?#]?|``[^\r\n\t`]*(?:``|$))/i],["pun",/^[^\t\n\r \xA0\"\'\w]+/]]),["fs","ml"]);
diff --git a/apidoc/vendor/prettify/lang-mumps.js b/apidoc/vendor/prettify/lang-mumps.js
new file mode 100755
index 0000000..6d51258
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-mumps.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2011 Kitware Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+null],["kwd",/^(?:[^\$]B|BREAK|C|CLOSE|D|DO|E|ELSE|F|FOR|G|GOTO|H|HALT|H|HANG|I|IF|J|JOB|K|KILL|L|LOCK|M|MERGE|N|NEW|O|OPEN|Q|QUIT|R|READ|S|SET|TC|TCOMMIT|TRE|TRESTART|TRO|TROLLBACK|TS|TSTART|U|USE|V|VIEW|W|WRITE|X|XECUTE)\b/i,null],["lit",/^[+-]?(?:(?:\.\d+|\d+(?:\.\d*)?)(?:E[+\-]?\d+)?)/i],["pln",/^[a-z][a-zA-Z0-9]*/i],["pun",/^[^\w\t\n\r\xA0\"\$;%\^]|_/]]),["mumps"]);
diff --git a/apidoc/vendor/prettify/lang-n.js b/apidoc/vendor/prettify/lang-n.js
new file mode 100755
index 0000000..9b3910c
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-n.js
@@ -0,0 +1,19 @@
+/*
+
+ Copyright (C) 2011 Zimin A.V.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.createSimpleLexer([["str",/^(?:\'(?:[^\\\'\r\n]|\\.)*\'|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/,null,'"'],["com",/^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\r\n]*)/,null,"#"],["pln",/^\s+/,null," \r\n\t\u00a0"]],[["str",/^@\"(?:[^\"]|\"\")*(?:\"|$)/,null],["str",/^<#(?:[^#>])*(?:#>|$)/,null],["str",/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/,null],["com",/^\/\/[^\r\n]*/,
+null],["typ",/^(?:array|bool|byte|char|decimal|double|float|int|list|long|object|sbyte|short|string|ulong|uint|ufloat|ulong|ushort|void)\b/,null],["lit",/^@[a-z_$][a-z_$@0-9]*/i,null],["typ",/^@[A-Z]+[a-z][A-Za-z_$@0-9]*/,null],["pln",/^'?[A-Za-z_$][a-z_$@0-9]*/i,null],["lit",/^(?:0x[a-f0-9]+|(?:\d(?:_\d+)*\d*(?:\.\d*)?|\.\d\+)(?:e[+\-]?\d+)?)[a-z]*/i,null,"0123456789"],["pun",/^.[^\s\w\.$@\'\"\`\/\#]*/,null]]),["n","nemerle"]);
diff --git a/apidoc/vendor/prettify/lang-nemerle.js b/apidoc/vendor/prettify/lang-nemerle.js
new file mode 100755
index 0000000..9b3910c
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-nemerle.js
@@ -0,0 +1,19 @@
+/*
+
+ Copyright (C) 2011 Zimin A.V.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.createSimpleLexer([["str",/^(?:\'(?:[^\\\'\r\n]|\\.)*\'|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/,null,'"'],["com",/^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\r\n]*)/,null,"#"],["pln",/^\s+/,null," \r\n\t\u00a0"]],[["str",/^@\"(?:[^\"]|\"\")*(?:\"|$)/,null],["str",/^<#(?:[^#>])*(?:#>|$)/,null],["str",/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/,null],["com",/^\/\/[^\r\n]*/,
+null],["typ",/^(?:array|bool|byte|char|decimal|double|float|int|list|long|object|sbyte|short|string|ulong|uint|ufloat|ulong|ushort|void)\b/,null],["lit",/^@[a-z_$][a-z_$@0-9]*/i,null],["typ",/^@[A-Z]+[a-z][A-Za-z_$@0-9]*/,null],["pln",/^'?[A-Za-z_$][a-z_$@0-9]*/i,null],["lit",/^(?:0x[a-f0-9]+|(?:\d(?:_\d+)*\d*(?:\.\d*)?|\.\d\+)(?:e[+\-]?\d+)?)[a-z]*/i,null,"0123456789"],["pun",/^.[^\s\w\.$@\'\"\`\/\#]*/,null]]),["n","nemerle"]);
diff --git a/apidoc/vendor/prettify/lang-pascal.js b/apidoc/vendor/prettify/lang-pascal.js
new file mode 100755
index 0000000..c76a11c
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-pascal.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2013 Peter Kofler
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+null],["lit",/^(?:true|false|self|nil)/i,null],["pln",/^[a-z][a-z0-9]*/i,null],["lit",/^(?:\$[a-f0-9]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+\-]?\d+)?)/i,null,"0123456789"],["pun",/^.[^\s\w\.$@\'\/]*/,null]]),["pascal"]);
diff --git a/apidoc/vendor/prettify/lang-proto.js b/apidoc/vendor/prettify/lang-proto.js
new file mode 100755
index 0000000..3215ff6
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-proto.js
@@ -0,0 +1,17 @@
+/*
+
+ Copyright (C) 2006 Google Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.sourceDecorator({keywords:"bytes,default,double,enum,extend,extensions,false,group,import,max,message,option,optional,package,repeated,required,returns,rpc,service,syntax,to,true",types:/^(bool|(double|s?fixed|[su]?int)(32|64)|float|string)\b/,cStyleComments:!0}),["proto"]);
diff --git a/apidoc/vendor/prettify/lang-r.js b/apidoc/vendor/prettify/lang-r.js
new file mode 100755
index 0000000..6ce16e8
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-r.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2012 Jeffrey B. Arnold
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+["pun",/^(?:<<?-|->>?|-|==|<=|>=|<|>|&&?|!=|\|\|?|\*|\+|\^|\/|!|%.*?%|=|~|\$|@|:{1,3}|[\[\](){};,?])/],["pln",/^(?:[A-Za-z]+[A-Za-z0-9_.]*|\.[a-zA-Z_][0-9a-zA-Z\._]*)(?![A-Za-z0-9_.])/],["str",/^`.+`/]]),["r","s","R","S","Splus"]);
diff --git a/apidoc/vendor/prettify/lang-rd.js b/apidoc/vendor/prettify/lang-rd.js
new file mode 100755
index 0000000..113141c
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-rd.js
@@ -0,0 +1,17 @@
+/*
+
+ Copyright (C) 2012 Jeffrey Arnold
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\r \xA0]+/,null,"\t\n\r \u00a0"],["com",/^%[^\r\n]*/,null,"%"]],[["lit",/^\\(?:cr|l?dots|R|tab)\b/],["kwd",/^\\[a-zA-Z@]+/],["kwd",/^#(?:ifn?def|endif)/],["pln",/^\\[{}]/],["pun",/^[{}()\[\]]+/]]),["Rd","rd"]);
diff --git a/apidoc/vendor/prettify/lang-rkt.js b/apidoc/vendor/prettify/lang-rkt.js
new file mode 100755
index 0000000..2f18c96
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-rkt.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2008 Google Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.createSimpleLexer([["opn",/^\(+/,null,"("],["clo",/^\)+/,null,")"],["com",/^;[^\r\n]*/,null,";"],["pln",/^[\t\n\r \xA0]+/,null,"\t\n\r \u00a0"],["str",/^\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)/,null,'"']],[["kwd",/^(?:block|c[ad]+r|catch|con[ds]|def(?:ine|un)|do|eq|eql|equal|equalp|eval-when|flet|format|go|if|labels|lambda|let|load-time-value|locally|macrolet|multiple-value-call|nil|progn|progv|quote|require|return-from|setq|symbol-macrolet|t|tagbody|the|throw|unwind)\b/,
+null],["lit",/^[+\-]?(?:[0#]x[0-9a-f]+|\d+\/\d+|(?:\.\d+|\d+(?:\.\d*)?)(?:[ed][+\-]?\d+)?)/i],["lit",/^\'(?:-*(?:\w|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?)?/],["pln",/^-*(?:[a-z_]|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?/i],["pun",/^[^\w\t\n\r \xA0()\"\\\';]+/]]),"cl el lisp lsp scm ss rkt".split(" "));
diff --git a/apidoc/vendor/prettify/lang-rust.js b/apidoc/vendor/prettify/lang-rust.js
new file mode 100755
index 0000000..4385677
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-rust.js
@@ -0,0 +1,20 @@
+/*
+
+ Copyright (C) 2015 Chris Morgan
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+["kwd",/^(?:alignof|become|do|offsetof|priv|pure|sizeof|typeof|unsized|yield|abstract|virtual|final|override|macro)\b/],["typ",/^(?:[iu](8|16|32|64|size)|char|bool|f32|f64|str|Self)\b/],["typ",/^(?:Copy|Send|Sized|Sync|Drop|Fn|FnMut|FnOnce|Box|ToOwned|Clone|PartialEq|PartialOrd|Eq|Ord|AsRef|AsMut|Into|From|Default|Iterator|Extend|IntoIterator|DoubleEndedIterator|ExactSizeIterator|Option|Some|None|Result|Ok|Err|SliceConcatExt|String|ToString|Vec)\b/],["lit",/^(self|true|false|null)\b/],
+["lit",/^\d[0-9_]*(?:[iu](?:size|8|16|32|64))?/],["lit",/^0x[a-fA-F0-9_]+(?:[iu](?:size|8|16|32|64))?/],["lit",/^0o[0-7_]+(?:[iu](?:size|8|16|32|64))?/],["lit",/^0b[01_]+(?:[iu](?:size|8|16|32|64))?/],["lit",/^\d[0-9_]*\.(?![^\s\d.])/],["lit",/^\d[0-9_]*(?:\.\d[0-9_]*)(?:[eE][+-]?[0-9_]+)?(?:f32|f64)?/],["lit",/^\d[0-9_]*(?:\.\d[0-9_]*)?(?:[eE][+-]?[0-9_]+)(?:f32|f64)?/],["lit",/^\d[0-9_]*(?:\.\d[0-9_]*)?(?:[eE][+-]?[0-9_]+)?(?:f32|f64)/],
+["atn",/^[a-z_]\w*!/i],["pln",/^[a-z_]\w*/i],["atv",/^#!?\[[\s\S]*?\]/],["pun",/^[+\-/*=^&|!<>%[\](){}?:.,;]/],["pln",/./]]),["rust"]);
diff --git a/apidoc/vendor/prettify/lang-s.js b/apidoc/vendor/prettify/lang-s.js
new file mode 100755
index 0000000..6ce16e8
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-s.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2012 Jeffrey B. Arnold
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+["pun",/^(?:<<?-|->>?|-|==|<=|>=|<|>|&&?|!=|\|\|?|\*|\+|\^|\/|!|%.*?%|=|~|\$|@|:{1,3}|[\[\](){};,?])/],["pln",/^(?:[A-Za-z]+[A-Za-z0-9_.]*|\.[a-zA-Z_][0-9a-zA-Z\._]*)(?![A-Za-z0-9_.])/],["str",/^`.+`/]]),["r","s","R","S","Splus"]);
diff --git a/apidoc/vendor/prettify/lang-scala.js b/apidoc/vendor/prettify/lang-scala.js
new file mode 100755
index 0000000..3347dd6
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-scala.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2010 Google Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+["lit",/^(?:true|false|null|this)\b/],["lit",/^(?:(?:0(?:[0-7]+|X[0-9A-F]+))L?|(?:(?:0|[1-9][0-9]*)(?:(?:\.[0-9]+)?(?:E[+\-]?[0-9]+)?F?|L?))|\\.[0-9]+(?:E[+\-]?[0-9]+)?F?)/i],["typ",/^[$_]*[A-Z][_$A-Z0-9]*[a-z][\w$]*/],["pln",/^[$a-zA-Z_][\w$]*/],["com",/^\/(?:\/.*|\*(?:\/|\**[^*/])*(?:\*+\/?)?)/],["pun",/^(?:\.+|\/)/]]),["scala"]);
diff --git a/apidoc/vendor/prettify/lang-scm.js b/apidoc/vendor/prettify/lang-scm.js
new file mode 100755
index 0000000..2f18c96
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-scm.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2008 Google Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.createSimpleLexer([["opn",/^\(+/,null,"("],["clo",/^\)+/,null,")"],["com",/^;[^\r\n]*/,null,";"],["pln",/^[\t\n\r \xA0]+/,null,"\t\n\r \u00a0"],["str",/^\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)/,null,'"']],[["kwd",/^(?:block|c[ad]+r|catch|con[ds]|def(?:ine|un)|do|eq|eql|equal|equalp|eval-when|flet|format|go|if|labels|lambda|let|load-time-value|locally|macrolet|multiple-value-call|nil|progn|progv|quote|require|return-from|setq|symbol-macrolet|t|tagbody|the|throw|unwind)\b/,
+null],["lit",/^[+\-]?(?:[0#]x[0-9a-f]+|\d+\/\d+|(?:\.\d+|\d+(?:\.\d*)?)(?:[ed][+\-]?\d+)?)/i],["lit",/^\'(?:-*(?:\w|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?)?/],["pln",/^-*(?:[a-z_]|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?/i],["pun",/^[^\w\t\n\r \xA0()\"\\\';]+/]]),"cl el lisp lsp scm ss rkt".split(" "));
diff --git a/apidoc/vendor/prettify/lang-sql.js b/apidoc/vendor/prettify/lang-sql.js
new file mode 100755
index 0000000..a7d292c
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-sql.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2008 Google Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+null],["lit",/^[+-]?(?:0x[\da-f]+|(?:(?:\.\d+|\d+(?:\.\d*)?)(?:e[+\-]?\d+)?))/i],["pln",/^[a-z_][\w-]*/i],["pun",/^[^\w\t\n\r \xA0\"\'][^\w\t\n\r \xA0+\-\"\']*/]]),["sql"]);
diff --git a/apidoc/vendor/prettify/lang-ss.js b/apidoc/vendor/prettify/lang-ss.js
new file mode 100755
index 0000000..2f18c96
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-ss.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2008 Google Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.createSimpleLexer([["opn",/^\(+/,null,"("],["clo",/^\)+/,null,")"],["com",/^;[^\r\n]*/,null,";"],["pln",/^[\t\n\r \xA0]+/,null,"\t\n\r \u00a0"],["str",/^\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)/,null,'"']],[["kwd",/^(?:block|c[ad]+r|catch|con[ds]|def(?:ine|un)|do|eq|eql|equal|equalp|eval-when|flet|format|go|if|labels|lambda|let|load-time-value|locally|macrolet|multiple-value-call|nil|progn|progv|quote|require|return-from|setq|symbol-macrolet|t|tagbody|the|throw|unwind)\b/,
+null],["lit",/^[+\-]?(?:[0#]x[0-9a-f]+|\d+\/\d+|(?:\.\d+|\d+(?:\.\d*)?)(?:[ed][+\-]?\d+)?)/i],["lit",/^\'(?:-*(?:\w|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?)?/],["pln",/^-*(?:[a-z_]|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?/i],["pun",/^[^\w\t\n\r \xA0()\"\\\';]+/]]),"cl el lisp lsp scm ss rkt".split(" "));
diff --git a/apidoc/vendor/prettify/lang-swift.js b/apidoc/vendor/prettify/lang-swift.js
new file mode 100755
index 0000000..5442fa7
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-swift.js
@@ -0,0 +1,16 @@
+/*
+
+ Copyright (C) 2015 Google Inc.
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+null],["com",/^\/\/.*?[\n\r]/,null],["com",/^\/\*[\s\S]*?(?:\*\/|$)/,null],["pun",/^<<=|<=|<<|>>=|>=|>>|===|==|\.\.\.|&&=|\.\.<|!==|!=|&=|~=|~|\(|\)|\[|\]|{|}|@|#|;|\.|,|:|\|\|=|\?\?|\|\||&&|&\*|&\+|&-|&=|\+=|-=|\/=|\*=|\^=|%=|\|=|->|`|==|\+\+|--|\/|\+|!|\*|%|<|>|&|\||\^|\?|=|-|_/,null],["typ",/^\b(?:[@_]?[A-Z]+[a-z][A-Za-z_$@0-9]*|\w+_t\b)/,null]]),["swift"]);
diff --git a/apidoc/vendor/prettify/lang-tcl.js b/apidoc/vendor/prettify/lang-tcl.js
new file mode 100755
index 0000000..1d75c3f
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-tcl.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2012 Pyrios
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.createSimpleLexer([["opn",/^\{+/,null,"{"],["clo",/^\}+/,null,"}"],["com",/^#[^\r\n]*/,null,"#"],["pln",/^[\t\n\r \xA0]+/,null,"\t\n\r \u00a0"],["str",/^\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)/,null,'"']],[["kwd",/^(?:after|append|apply|array|break|case|catch|continue|error|eval|exec|exit|expr|for|foreach|if|incr|info|proc|return|set|switch|trace|uplevel|upvar|while)\b/,null],["lit",/^[+\-]?(?:[0#]x[0-9a-f]+|\d+\/\d+|(?:\.\d+|\d+(?:\.\d*)?)(?:[ed][+\-]?\d+)?)/i],
+["lit",/^\'(?:-*(?:\w|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?)?/],["pln",/^-*(?:[a-z_]|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?/i],["pun",/^[^\w\t\n\r \xA0()\"\\\';]+/]]),["tcl"]);
diff --git a/apidoc/vendor/prettify/lang-tex.js b/apidoc/vendor/prettify/lang-tex.js
new file mode 100755
index 0000000..efc758c
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-tex.js
@@ -0,0 +1,17 @@
+/*
+
+ Copyright (C) 2011 Martin S.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\r \xA0]+/,null,"\t\n\r \u00a0"],["com",/^%[^\r\n]*/,null,"%"]],[["kwd",/^\\[a-zA-Z@]+/],["kwd",/^\\./],["typ",/^[$&]/],["lit",/[+-]?(?:\.\d+|\d+(?:\.\d*)?)(cm|em|ex|in|pc|pt|bp|mm)/i],["pun",/^[{}()\[\]=]+/]]),["latex","tex"]);
diff --git a/apidoc/vendor/prettify/lang-vb.js b/apidoc/vendor/prettify/lang-vb.js
new file mode 100755
index 0000000..e34086f
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-vb.js
@@ -0,0 +1,19 @@
+/*
+
+ Copyright (C) 2009 Google Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+null],["com",/^REM\b[^\r\n\u2028\u2029]*/i],["lit",/^(?:True\b|False\b|Nothing\b|\d+(?:E[+\-]?\d+[FRD]?|[FRDSIL])?|(?:&H[0-9A-F]+|&O[0-7]+)[SIL]?|\d*\.\d+(?:E[+\-]?\d+)?[FRD]?|#\s+(?:\d+[\-\/]\d+[\-\/]\d+(?:\s+\d+:\d+(?::\d+)?(\s*(?:AM|PM))?)?|\d+:\d+(?::\d+)?(\s*(?:AM|PM))?)\s+#)/i],["pln",/^(?:(?:[a-z]|_\w)\w*(?:\[[%&@!#]+\])?|\[(?:[a-z]|_\w)\w*\])/i],["pun",/^[^\w\t\n\r \"\'\[\]\xA0\u2018\u2019\u201C\u201D\u2028\u2029]+/],["pun",/^(?:\[|\])/]]),["vb",
+"vbs"]);
diff --git a/apidoc/vendor/prettify/lang-vbs.js b/apidoc/vendor/prettify/lang-vbs.js
new file mode 100755
index 0000000..e34086f
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-vbs.js
@@ -0,0 +1,19 @@
+/*
+
+ Copyright (C) 2009 Google Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+null],["com",/^REM\b[^\r\n\u2028\u2029]*/i],["lit",/^(?:True\b|False\b|Nothing\b|\d+(?:E[+\-]?\d+[FRD]?|[FRDSIL])?|(?:&H[0-9A-F]+|&O[0-7]+)[SIL]?|\d*\.\d+(?:E[+\-]?\d+)?[FRD]?|#\s+(?:\d+[\-\/]\d+[\-\/]\d+(?:\s+\d+:\d+(?::\d+)?(\s*(?:AM|PM))?)?|\d+:\d+(?::\d+)?(\s*(?:AM|PM))?)\s+#)/i],["pln",/^(?:(?:[a-z]|_\w)\w*(?:\[[%&@!#]+\])?|\[(?:[a-z]|_\w)\w*\])/i],["pun",/^[^\w\t\n\r \"\'\[\]\xA0\u2018\u2019\u201C\u201D\u2028\u2029]+/],["pun",/^(?:\[|\])/]]),["vb",
+"vbs"]);
diff --git a/apidoc/vendor/prettify/lang-vhd.js b/apidoc/vendor/prettify/lang-vhd.js
new file mode 100755
index 0000000..f67a4a3
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-vhd.js
@@ -0,0 +1,19 @@
+/*
+
+ Copyright (C) 2010 [email-masked]
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+["pln",/^(?:[a-z]\w*|\\[^\\]*\\)/i],["pun",/^[^\w\t\n\r \xA0\"\'][^\w\t\n\r \xA0\-\"\']*/]]),["vhdl","vhd"]);
diff --git a/apidoc/vendor/prettify/lang-vhdl.js b/apidoc/vendor/prettify/lang-vhdl.js
new file mode 100755
index 0000000..f67a4a3
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-vhdl.js
@@ -0,0 +1,19 @@
+/*
+
+ Copyright (C) 2010 [email-masked]
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+["pln",/^(?:[a-z]\w*|\\[^\\]*\\)/i],["pun",/^[^\w\t\n\r \xA0\"\'][^\w\t\n\r \xA0\-\"\']*/]]),["vhdl","vhd"]);
diff --git a/apidoc/vendor/prettify/lang-wiki.js b/apidoc/vendor/prettify/lang-wiki.js
new file mode 100755
index 0000000..d03fccd
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-wiki.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2009 Google Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t \xA0a-gi-z0-9]+/,null,"\t \u00a0abcdefgijklmnopqrstuvwxyz0123456789"],["pun",/^[=*~\^\[\]]+/,null,"=*~^[]"]],[["lang-wiki.meta",/(?:^^|\r\n?|\n)(#[a-z]+)\b/],["lit",/^(?:[A-Z][a-z][a-z0-9]+[A-Z][a-z][a-zA-Z0-9]+)\b/],["lang-",/^\{\{\{([\s\S]+?)\}\}\}/],["lang-",/^`([^\r\n`]+)`/],["str",/^https?:\/\/[^\/?#\s]*(?:\/[^?#\s]*)?(?:\?[^#\s]*)?(?:#\S*)?/i],["pln",/^(?:\r\n|[\s\S])[^#=*~^A-Zh\{`\[\r\n]*/]]),["wiki"]);
+PR.registerLangHandler(PR.createSimpleLexer([["kwd",/^#[a-z]+/i,null,"#"]],[]),["wiki.meta"]);
diff --git a/apidoc/vendor/prettify/lang-xq.js b/apidoc/vendor/prettify/lang-xq.js
new file mode 100755
index 0000000..a6d8537
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-xq.js
@@ -0,0 +1,19 @@
+/*
+
+ Copyright (C) 2011 Patrick Wied
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+["pln",/^[A-Za-z0-9_\-\:]+/],["pln",/^[\t\n\r \xA0]+/]]),["xq","xquery"]);
diff --git a/apidoc/vendor/prettify/lang-xquery.js b/apidoc/vendor/prettify/lang-xquery.js
new file mode 100755
index 0000000..a6d8537
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-xquery.js
@@ -0,0 +1,19 @@
+/*
+
+ Copyright (C) 2011 Patrick Wied
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+["pln",/^[A-Za-z0-9_\-\:]+/],["pln",/^[\t\n\r \xA0]+/]]),["xq","xquery"]);
diff --git a/apidoc/vendor/prettify/lang-yaml.js b/apidoc/vendor/prettify/lang-yaml.js
new file mode 100755
index 0000000..a2b4b07
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-yaml.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2015 ribrdb @ code.google.com
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.createSimpleLexer([["pun",/^[:|>?]+/,null,":|>?"],["dec",/^%(?:YAML|TAG)[^#\r\n]+/,null,"%"],["typ",/^[&]\S+/,null,"&"],["typ",/^!\S*/,null,"!"],["str",/^"(?:[^\\"]|\\.)*(?:"|$)/,null,'"'],["str",/^'(?:[^']|'')*(?:'|$)/,null,"'"],["com",/^#[^\r\n]*/,null,"#"],["pln",/^\s+/,null," \t\r\n"]],[["dec",/^(?:---|\.\.\.)(?:[\r\n]|$)/],["pun",/^-/],["kwd",/^[\w-]+:[ \r\n]/],["pln",
+/^\w+/]]),["yaml","yml"]);
diff --git a/apidoc/vendor/prettify/lang-yml.js b/apidoc/vendor/prettify/lang-yml.js
new file mode 100755
index 0000000..a2b4b07
--- /dev/null
+++ b/apidoc/vendor/prettify/lang-yml.js
@@ -0,0 +1,18 @@
+/*
+
+ Copyright (C) 2015 ribrdb @ code.google.com
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+PR.registerLangHandler(PR.createSimpleLexer([["pun",/^[:|>?]+/,null,":|>?"],["dec",/^%(?:YAML|TAG)[^#\r\n]+/,null,"%"],["typ",/^[&]\S+/,null,"&"],["typ",/^!\S*/,null,"!"],["str",/^"(?:[^\\"]|\\.)*(?:"|$)/,null,'"'],["str",/^'(?:[^']|'')*(?:'|$)/,null,"'"],["com",/^#[^\r\n]*/,null,"#"],["pln",/^\s+/,null," \t\r\n"]],[["dec",/^(?:---|\.\.\.)(?:[\r\n]|$)/],["pun",/^-/],["kwd",/^[\w-]+:[ \r\n]/],["pln",
+/^\w+/]]),["yaml","yml"]);
diff --git a/apidoc/vendor/prettify/prettify.css b/apidoc/vendor/prettify/prettify.css
new file mode 100755
index 0000000..d44b3a2
--- /dev/null
+++ b/apidoc/vendor/prettify/prettify.css
@@ -0,0 +1 @@
\ No newline at end of file
diff --git a/apidoc/vendor/prettify/prettify.js b/apidoc/vendor/prettify/prettify.js
new file mode 100755
index 0000000..0a2b435
--- /dev/null
+++ b/apidoc/vendor/prettify/prettify.js
@@ -0,0 +1,46 @@
+!function(){/*
+
+ Copyright (C) 2006 Google Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+window.PR_SHOULD_USE_CONTINUATION=!0;
+q=/^(?:pre|code|xmp)$/i,g={};f()}},H=E.define;"function"===typeof H&&H.amd&&H("google-code-prettify",[],function(){return Y})})();}()
diff --git a/apidoc/vendor/prettify/run_prettify.js b/apidoc/vendor/prettify/run_prettify.js
new file mode 100755
index 0000000..a9691da
--- /dev/null
+++ b/apidoc/vendor/prettify/run_prettify.js
@@ -0,0 +1,63 @@
+!function(){/*
+
+ Copyright (C) 2013 Google Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+ Copyright (C) 2006 Google Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+S=R.define;"function"===typeof S&&S.amd&&S("google-code-prettify",[],function(){return V})})();return g}();T||t.setTimeout(U,0)})();}()
diff --git a/apidoc/vendor/prism.css b/apidoc/vendor/prism.css
deleted file mode 100644
index ad0d350..0000000
--- a/apidoc/vendor/prism.css
+++ /dev/null
@@ -1,125 +0,0 @@
-/* PrismJS 1.20.0
-https://prismjs.com/download.html#themes=prism-tomorrow&languages=clike+javascript+bash+c+csharp+cpp+clojure+elixir+erlang+go+http+json+jsonp+json5+lua+perl+python+rust */
-/**
- * prism.js tomorrow night eighties for JavaScript, CoffeeScript, CSS and HTML
- * Based on https://github.com/chriskempson/tomorrow-theme
- * @author Rose Pritchard
- */
-
-code[class*="language-"],
-pre[class*="language-"] {
-	color: #ccc;
-	background: none;
-	font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
-	font-size: 1em;
-	text-align: left;
-	white-space: pre;
-	word-spacing: normal;
-	word-break: normal;
-	word-wrap: normal;
-	line-height: 1.5;
-
-	-moz-tab-size: 4;
-	-o-tab-size: 4;
-	tab-size: 4;
-
-	-webkit-hyphens: none;
-	-moz-hyphens: none;
-	-ms-hyphens: none;
-	hyphens: none;
-
-}
-
-/* Code blocks */
-pre[class*="language-"] {
-	padding: 1em;
-	margin: .5em 0;
-	overflow: auto;
-}
-
-:not(pre) > code[class*="language-"],
-pre[class*="language-"] {
-	background: #2d2d2d;
-}
-
-/* Inline code */
-:not(pre) > code[class*="language-"] {
-	padding: .1em;
-	border-radius: .3em;
-	white-space: normal;
-}
-
-.token.comment,
-.token.block-comment,
-.token.prolog,
-.token.doctype,
-.token.cdata {
-	color: #999;
-}
-
-.token.punctuation {
-	color: #ccc;
-}
-
-.token.tag,
-.token.attr-name,
-.token.namespace,
-.token.deleted {
-	color: #e2777a;
-}
-
-.token.function-name {
-	color: #6196cc;
-}
-
-.token.boolean,
-.token.number,
-.token.function {
-	color: #f08d49;
-}
-
-.token.property,
-.token.class-name,
-.token.constant,
-.token.symbol {
-	color: #f8c555;
-}
-
-.token.selector,
-.token.important,
-.token.atrule,
-.token.keyword,
-.token.builtin {
-	color: #cc99cd;
-}
-
-.token.string,
-.token.char,
-.token.attr-value,
-.token.regex,
-.token.variable {
-	color: #7ec699;
-}
-
-.token.operator,
-.token.entity,
-.token.url {
-	color: #67cdcc;
-}
-
-.token.important,
-.token.bold {
-	font-weight: bold;
-}
-.token.italic {
-	font-style: italic;
-}
-
-.token.entity {
-	cursor: help;
-}
-
-.token.inserted {
-	color: green;
-}
-
diff --git a/apidoc/vendor/prism.js b/apidoc/vendor/prism.js
deleted file mode 100644
index 371cd8a..0000000
--- a/apidoc/vendor/prism.js
+++ /dev/null
@@ -1,21 +0,0 @@
-/* PrismJS 1.20.0
-https://prismjs.com/download.html#themes=prism-tomorrow&languages=clike+javascript+bash+c+csharp+cpp+clojure+elixir+erlang+go+http+json+jsonp+json5+lua+perl+python+rust */
-Prism.languages.json={property:{pattern:/"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,greedy:!0},string:{pattern:/"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,greedy:!0},comment:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,number:/-?\d+\.?\d*(?:e[+-]?\d+)?/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:true|false)\b/,null:{pattern:/\bnull\b/,alias:"keyword"}},Prism.languages.webmanifest=Prism.languages.json;
-Prism.languages.jsonp=Prism.languages.extend("json",{punctuation:/[{}[\]();,.]/}),Prism.languages.insertBefore("jsonp","punctuation",{function:/[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*\()/});
-!function(n){var e=/("|')(?:\\(?:\r\n?|\n|.)|(?!\1)[^\\\r\n])*\1/;n.languages.json5=n.languages.extend("json",{property:[{pattern:RegExp(e.source+"(?=\\s*:)"),greedy:!0},{pattern:/[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*:)/,alias:"unquoted"}],string:{pattern:e,greedy:!0},number:/[+-]?(?:NaN|Infinity|0x[a-fA-F\d]+|(?:\d+\.?\d*|\.\d+)(?:[eE][+-]?\d+)?)/})}(Prism);
diff --git a/apidoc/vendor/require.min.js b/apidoc/vendor/require.min.js
old mode 100644
new mode 100755
diff --git a/apidoc/vendor/semver.min.js b/apidoc/vendor/semver.min.js
old mode 100644
new mode 100755
diff --git a/apidoc/vendor/webfontloader.js b/apidoc/vendor/webfontloader.js
old mode 100644
new mode 100755
diff --git a/package.json b/package.json
index 7f720f3..23b546b 100644
--- a/package.json
+++ b/package.json
@@ -4,7 +4,7 @@
   "description": "xCALLY Motion is the new Realtime asynchronous solution for your multichannel contact center over Asterisk.",
   "main": "server/app.js",
   "engines": {
-    "node": "6.17.1"
+    "node": "6.10.3"
   },
   "repository": {
     "type": "git",
@@ -136,17 +136,19 @@
     "grunt-contrib-cssmin": "2.2.1",
     "grunt-contrib-jshint": "1.1.0",
     "grunt-contrib-obfuscator": "4.0.0",
+    "grunt-contrib-uglify": "3.4.0",
     "grunt-contrib-watch": "1.1.0",
     "grunt-express-server": "0.5.4",
     "grunt-filerev": "2.3.1",
     "grunt-injector": "1.1.0",
+    "grunt-jsbeautifier": "0.2.13",
     "grunt-jsonlint": "1.1.0",
     "grunt-ng-annotate": "3.0.0",
     "grunt-nodemailer": "1.1.0",
     "grunt-sass": "1.2.1",
-    "grunt-terser": "1.0.0",
     "grunt-usemin": "3.1.1",
     "grunt-version": "1.3.2",
+    "js-obfuscator": "0.1.2",
     "load-grunt-config": "0.19.2",
     "mocha": "3.5.3",
     "time-grunt": "1.4.0"
diff --git a/public/index.html b/public/index.html
index e44c0bc..58b78cb 100644
--- a/public/index.html
+++ b/public/index.html
@@ -58,9 +58,9 @@
 
     <toasty></toasty>
 
-    <script src="scripts/vendor.4b108999.js"></script>
+    <script src="scripts/vendor.17cdb947.js"></script>
 
-    <script src="scripts/app.42b5ad22.js"></script>
+    <script src="scripts/app.c5d20425.js"></script>
 
     <!-- CKEDITOR -->
     <script src="assets/plugins/ckeditor/ckeditor.js"></script>
diff --git a/public/scripts/app.42b5ad22.js b/public/scripts/app.42b5ad22.js
deleted file mode 100644
index c29583d..0000000
--- a/public/scripts/app.42b5ad22.js
+++ /dev/null
@@ -1,18 +0,0 @@
-// *************************************************************************
-// *                                                                       *
-// * xCALLY Motion -  The Omnichannel Contact Center                       *
-// * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
-// *                                                                       *
-// *************************************************************************
-// *                                                                       *
-// * Email: [email-masked]                                                *
-// * Website: https://www.xcally.com                                       *
-// *                                                                       *
-// *************************************************************************
-// *                                                                       *
-// * The SOFTWARE PRODUCT is protected by copyright laws and international *
-// * copyright treaties, as well as other intellectual property laws and   *
-// * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
-// *                                                                       *
-// *************************************************************************
\ No newline at end of file
diff --git a/public/scripts/app.c5d20425.js b/public/scripts/app.c5d20425.js
new file mode 100644
index 0000000..325cdcf
--- /dev/null
+++ b/public/scripts/app.c5d20425.js
@@ -0,0 +1 @@
\ No newline at end of file
diff --git a/public/scripts/vendor.17cdb947.js b/public/scripts/vendor.17cdb947.js
new file mode 100644
index 0000000..21bd430
--- /dev/null
+++ b/public/scripts/vendor.17cdb947.js
@@ -0,0 +1 @@
\ No newline at end of file
diff --git a/public/scripts/vendor.4b108999.js b/public/scripts/vendor.4b108999.js
deleted file mode 100644
index d049d73..0000000
--- a/public/scripts/vendor.4b108999.js
+++ /dev/null
@@ -1,587 +0,0 @@
-/*!
- * jQuery JavaScript Library v2.2.4
- * http://jquery.com/
- *
- * Includes Sizzle.js
- * http://sizzlejs.com/
- *
- * Copyright jQuery Foundation and other contributors
- * Released under the MIT license
- * http://jquery.org/license
- *
- * Date: 2016-05-20T17:23Z
- */
-/*!
- * Bootstrap v3.3.7 (http://getbootstrap.com)
- * Copyright 2011-2016 Twitter, Inc.
- * Licensed under the MIT license
- */
-/*!
- * Sizzle CSS Selector Engine v2.2.1
- * http://sizzlejs.com/
- *
- * Copyright jQuery Foundation and other contributors
- * Released under the MIT license
- * http://jquery.org/license
- *
- * Date: 2015-10-17
- */
-/**
- * @license AngularJS v1.5.10
- * (c) 2010-2016 Google, Inc. http://angularjs.org
- * License: MIT
- */
-/**
- * @license AngularJS v1.5.8
- * (c) 2010-2016 Google, Inc. http://angularjs.org
- * License: MIT
- */
-/**
- * @license AngularJS v1.5.8
- * (c) 2010-2016 Google, Inc. http://angularjs.org
- * License: MIT
- */
-/**
- * @license AngularJS v1.5.8
- * (c) 2010-2016 Google, Inc. http://angularjs.org
- * License: MIT
- */
-/*! DataTables 1.10.21
- * ©2008-2020 SpryMedia Ltd - datatables.net/license
- */
-/*!
- * angular-datatables - v0.5.4
- * https://github.com/l-lin/angular-datatables
- * License: MIT
- */
-/*!
- * angular-datatables - v0.5.4
- * https://github.com/l-lin/angular-datatables
- * License: MIT
- */
-/*!
- * angular-datatables - v0.5.4
- * https://github.com/l-lin/angular-datatables
- * License: MIT
- */
-/*!
- * angular-datatables - v0.5.4
- * https://github.com/l-lin/angular-datatables
- * License: MIT
- */
-/*!
- * angular-datatables - v0.5.4
- * https://github.com/l-lin/angular-datatables
- * License: MIT
- */
-/*!
- * angular-datatables - v0.5.4
- * https://github.com/l-lin/angular-datatables
- * License: MIT
- */
-/*!
- * angular-datatables - v0.5.4
- * https://github.com/l-lin/angular-datatables
- * License: MIT
- */
-/*!
- * angular-datatables - v0.5.4
- * https://github.com/l-lin/angular-datatables
- * License: MIT
- */
-/*!
- * angular-datatables - v0.5.4
- * https://github.com/l-lin/angular-datatables
- * License: MIT
- */
-/*!
- * angular-datatables - v0.5.4
- * https://github.com/l-lin/angular-datatables
- * License: MIT
- */
-/*!
- * angular-datatables - v0.5.4
- * https://github.com/l-lin/angular-datatables
- * License: MIT
- */
-/*!
- * angular-datatables - v0.5.4
- * https://github.com/l-lin/angular-datatables
- * License: MIT
- */
-/**
- * @license AngularJS v1.5.8
- * (c) 2010-2016 Google, Inc. http://angularjs.org
- * License: MIT
- */
-/*!
- * Angular Material Design
- * https://github.com/angular/material
- * @license MIT
- * v1.1.1
- */
-/**
- * @license AngularJS v1.5.8
- * (c) 2010-2016 Google, Inc. http://angularjs.org
- * License: MIT
- */
-/**
- * @license AngularJS v1.5.8
- * (c) 2010-2016 Google, Inc. http://angularjs.org
- * License: MIT
- */
-/*!
- * angular-translate - v2.11.0 - 2016-03-20
- * 
- * Copyright (c) 2016 The angular-translate team, Pascal Precht; Licensed MIT
- */
-/*!
- * angular-translate - v2.11.0 - 2016-03-20
- * 
- * Copyright (c) 2016 The angular-translate team, Pascal Precht; Licensed MIT
- */
-/*!
- * FullCalendar v2.3.1
- * Docs & License: http://fullcalendar.io/
- * (c) 2015 Adam Shaw
- */
-/**
- * State-based routing for AngularJS 1.x
- * NOTICE: This monolithic bundle also bundles the @uirouter/core code.
- *         This causes it to be incompatible with plugins that depend on @uirouter/core.
- *         We recommend switching to the ui-router-core.js and ui-router-angularjs.js bundles instead.
- *         For more information, see https://ui-router.github.io/blog/uirouter-for-angularjs-umd-bundles
- * @version v1.0.25
- * @link https://ui-router.github.io
- * @license MIT License, http://www.opensource.org/licenses/MIT
- */
-/**
- * State-based routing for AngularJS 1.x
- * @version v1.0.25
- * @link https://ui-router.github.io
- * @license MIT License, http://www.opensource.org/licenses/MIT
- */
-/*! jQuery UI - v1.12.1 - 2016-09-14
-* http://jqueryui.com
-* Copyright jQuery Foundation and other contributors; Licensed MIT */
-function(e){"function"==typeof define&&define.amd?define(["jquery"],e):e(jQuery)}((function(e){e.ui=e.ui||{};e.ui.version="1.12.1";
-/*!
- * jQuery UI Widget 1.12.1
- * http://jqueryui.com
- *
- * Copyright jQuery Foundation and other contributors
- * Released under the MIT license.
- * http://jquery.org/license
-/*!
- * jQuery UI Position 1.12.1
- * http://jqueryui.com
- *
- * Copyright jQuery Foundation and other contributors
- * Released under the MIT license.
- * http://jquery.org/license
- *
- * http://api.jqueryui.com/position/
-/*!
- * jQuery UI :data 1.12.1
- * http://jqueryui.com
- *
- * Copyright jQuery Foundation and other contributors
- * Released under the MIT license.
- * http://jquery.org/license
- */var i,a,o=e;e.effects={effect:{}},
-/*!
- * jQuery Color Animations v2.1.2
- * https://github.com/jquery/jquery-color
- *
- * Copyright 2014 jQuery Foundation and other contributors
- * Released under the MIT license.
- * http://jquery.org/license
- *
- * Date: Wed Jan 16 08:47:09 2013 -0600
- */
-/*!
- * jQuery UI Effects Blind 1.12.1
- * http://jqueryui.com
- *
- * Copyright jQuery Foundation and other contributors
- * Released under the MIT license.
- * http://jquery.org/license
- */!1!==e.uiBackCompat&&e.effects.define("transfer",(function(t,n){e(this).transfer(t,n)}));
-/*!
- * jQuery UI Focusable 1.12.1
- * http://jqueryui.com
- *
- * Copyright jQuery Foundation and other contributors
- * Released under the MIT license.
- * http://jquery.org/license
- */
-/*!
- * jQuery UI Support for jQuery core 1.7.x 1.12.1
- * http://jqueryui.com
- *
- * Copyright jQuery Foundation and other contributors
- * Released under the MIT license.
- * http://jquery.org/license
- *
- */
-/*!
- * jQuery UI Keycode 1.12.1
- * http://jqueryui.com
- *
- * Copyright jQuery Foundation and other contributors
- * Released under the MIT license.
- * http://jquery.org/license
- */
-/*!
- * jQuery UI Autocomplete 1.12.1
- * http://jqueryui.com
- *
- * Copyright jQuery Foundation and other contributors
- * Released under the MIT license.
- * http://jquery.org/license
- */
-/*!
- * jQuery UI Controlgroup 1.12.1
- * http://jqueryui.com
- *
- * Copyright jQuery Foundation and other contributors
- * Released under the MIT license.
- * http://jquery.org/license
-/*!
- * jQuery UI Checkboxradio 1.12.1
- * http://jqueryui.com
- *
- * Copyright jQuery Foundation and other contributors
- * Released under the MIT license.
- * http://jquery.org/license
- */
-/*!
- * jQuery UI Button 1.12.1
- * http://jqueryui.com
- *
- * Copyright jQuery Foundation and other contributors
- * Released under the MIT license.
- * http://jquery.org/license
-/*!
- * jQuery UI Datepicker 1.12.1
- * http://jqueryui.com
- *
- * Copyright jQuery Foundation and other contributors
- * Released under the MIT license.
- * http://jquery.org/license
-/*!
- * jQuery UI Draggable 1.12.1
- * http://jqueryui.com
- *
- * Copyright jQuery Foundation and other contributors
- * Released under the MIT license.
- * http://jquery.org/license
- */
-/*!
- * jQuery UI Resizable 1.12.1
- * http://jqueryui.com
- *
- * Copyright jQuery Foundation and other contributors
- * Released under the MIT license.
- * http://jquery.org/license
-/*!
- * jQuery UI Dialog 1.12.1
- * http://jqueryui.com
- *
- * Copyright jQuery Foundation and other contributors
- * Released under the MIT license.
- * http://jquery.org/license
-/*!
- * jQuery UI Droppable 1.12.1
- * http://jqueryui.com
- *
- * Copyright jQuery Foundation and other contributors
- * Released under the MIT license.
- * http://jquery.org/license
-/*!
- * jQuery UI Progressbar 1.12.1
- * http://jqueryui.com
- *
- * Copyright jQuery Foundation and other contributors
- * Released under the MIT license.
- * http://jquery.org/license
- */
-/*!
- * jQuery UI Spinner 1.12.1
- * http://jqueryui.com
- *
- * Copyright jQuery Foundation and other contributors
- * Released under the MIT license.
- * http://jquery.org/license
- */
-/*!
- * jQuery UI Tabs 1.12.1
- * http://jqueryui.com
- *
- * Copyright jQuery Foundation and other contributors
- * Released under the MIT license.
- * http://jquery.org/license
-/*!
- * jQuery UI Tooltip 1.12.1
- * http://jqueryui.com
- *
- * Copyright jQuery Foundation and other contributors
- * Released under the MIT license.
- * http://jquery.org/license
-/**
- * angular-ui-sortable - This directive allows you to jQueryUI Sortable.
- * @version v0.14.0 - 2016-03-28
- * @link http://angular-ui.github.com
- * @license MIT
- */
-/**
- * @license Angular UI Tree v2.15.0
- * (c) 2010-2016. https://github.com/angular-ui-tree/angular-ui-tree
- * License: MIT
- */
-/*@cc_on
-         @if (@_win32 || @_win64)
-         document.write('<script id="ieScriptLoad" defer src="//:"><\/script>');
-         document.getElementById('ieScriptLoad').onreadystatechange = function() {
-         if (this.readyState == 'complete') {
-         callback();
-         }
-         };
-         @end @*/
-/*! Responsive 2.1.0
- * 2014-2016 SpryMedia Ltd - datatables.net/license
- */
-/*!
- * imagesLoaded v4.1.0
- * JavaScript is all like "You images are done yet or what?"
- * MIT License
- */
-/**!
- * Sortable
- * @author	RubaXa   <[email-masked]>
- * @license MIT
- */
-/**
- * @author RubaXa <[email-masked]>
- * @licence MIT
- */
-/*
- * Angular Material Data Table
- * https://github.com/daniel-nagy/md-data-table
- * @license MIT
- * v0.10.9
- */
-/**
- * Bunch of useful filters for angularJS(with no external dependencies!)
- * @version v0.5.17 - 2017-09-22 * @link https://github.com/a8m/angular-filter
- * @author Ariel Mashraki <[email-masked]>
- * @license MIT License, http://www.opensource.org/licenses/MIT
- */
-/* @license
-Papa Parse
-v4.6.3
-https://github.com/mholt/PapaParse
-License: MIT
-*/
-/*!
- * jsTree 3.3.10
- * http://jstree.com/
- *
- * Copyright (c) 2014 Ivan Bozhanov (http://vakata.com)
- *
- * Licensed same as jquery - under the terms of the MIT License
- *   http://www.opensource.org/licenses/mit-license.php
- */
-/*!
- * if using jslint please allow for the jQuery global and use following options:
- * jslint: loopfunc: true, browser: true, ass: true, bitwise: true, continue: true, nomen: true, plusplus: true, regexp: true, unparam: true, todo: true, white: true
-/*!
-					'themes' : {
-						'name' : this.get_theme(),
-						'icons' : this._data.core.themes.icons,
-						'dots' : this._data.core.themes.dots
-					},
-					*/
-/*!
-			oi = obj.children("i:visible"),
-			ai = a.children("i:visible"),
-			w1 = oi.width() * oi.length,
-			w2 = ai.width() * ai.length,
-			*/
-/*!
-					"shortcut"			: 113,
-					"shortcut_label"	: 'F2',
-					"icon"				: "glyphicon glyphicon-leaf",
-					*/
-/*!
-			if(!('oncontextmenu' in document.body) && ('ontouchstart' in document.body)) {
-				var el = null, tm = null;
-				this.element
-					.on("touchstart", ".jstree-anchor", function (e) {
-						el = e.currentTarget;
-						tm = +new Date();
-						$(document).one("touchend", function (e) {
-							e.target = document.elementFromPoint(e.originalEvent.targetTouches[0].pageX - window.pageXOffset, e.originalEvent.targetTouches[0].pageY - window.pageYOffset);
-							e.currentTarget = e.target;
-							tm = ((+(new Date())) - tm);
-							if(e.target === el && tm > 600 && tm < 1000) {
-								e.preventDefault();
-								$(el).trigger('contextmenu', e);
-							}
-							el = null;
-							tm = null;
-						});
-					});
-			}
-			*/
-/*!
-				.on("mousedown.jstree touchstart.jstree", ".jstree-wholerow", function (e) {
-						if(e.target === e.currentTarget) {
-							var a = $(e.currentTarget).closest(".jstree-node").children(".jstree-anchor");
-							e.target = a[0];
-							a.trigger(e);
-						}
-					})
-/*!
- * clipboard.js v1.5.16
- * https://zenorocha.github.io/clipboard.js
- *
- * Licensed MIT © Zeno Rocha
- */
-/*! ngclipboard - v1.1.3 - 2017-10-31
-* https://github.com/sachinchoolur/ngclipboard
-* Copyright (c) 2017 Sachin; Licensed MIT */
-/**
- * @license AngularJS v1.5.8
- * (c) 2010-2016 Google, Inc. http://angularjs.org
- * License: MIT
- */
-/**
- * UI Component For Creating Cron Job Syntax To Send To Server
- * @version v3.2.1 - 2019-09-18 * @link https://github.com/jacobscarter/angular-cron-jobs
- * @author Jacob Carter <[email-masked]>
- * @license MIT License, http://www.opensource.org/licenses/MIT
- */
-/*!
- * jQuery.textcomplete
- *
- * Repository: https://github.com/yuku-t/jquery-textcomplete
- * License:    MIT (https://github.com/yuku-t/jquery-textcomplete/blob/master/LICENSE)
- * Author:     Yuku Takahashi
- */
-/*! EmojioneArea v3.4.1 | MIT license */
-window="undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},document=window.document||{},function(e,t){"function"==typeof require&&"object"==typeof exports&&"object"==typeof module?e(require("jquery")):"function"==typeof define&&define.amd?define(["jquery"],e):e(t.jQuery)}((function(e){"use strict";var t=0,n={},r={},i=window.emojione,a=[];function o(e){i?e():a.push(e)}var s,l,c,u="data:image/gif;base64,R0lGODlhAQABAJH/AP///wAAAMDAwAAAACH5BAEAAAIALAAAAAABAAEAAAICVAEAOw==",f=[].slice,d="emojionearea",h=0,p="&#8203;";function m(t,r,i){var a=!0,o=1;if(r){r=r.toLowerCase();do{var s=1==o?"@"+r:r;n[t.id][s]&&n[t.id][s].length&&e.each(n[t.id][s],(function(e,n){return a=!1!==n.apply(t,i||[])}))}while(a&&o--)}return a}function g(t,n,i,a){a=a||function(t,n){return e(n.currentTarget)},e.each(i,(function(o,s){o=e.isArray(i)?s:o,(r[t.id][s]||(r[t.id][s]=[])).push([n,o,a])}))}function _(e,t,n){var r,a=i.imageType;r="svg"==a?i.imagePathSVG:i.imagePathPNG;var o="";n&&(o=n.substr(1,n.length-2).replace(/_/g," ").replace(/\w\S*/g,(function(e){return e.charAt(0).toUpperCase()+e.substr(1).toLowerCase()})));var s="";return t.uc_base&&h>4?(s=t.uc_base,t=t.uc_output.toUpperCase()):s=t,e.replace("{name}",n||"").replace("{friendlyName}",o).replace("{img}",r+(h<2?s.toUpperCase():s)+"."+a).replace("{uni}",t).replace("{alt}",i.convert(t))}function b(e,t,n){return e.replace(/:?\+?[\w_\-]+:?/g,(function(e){e=":"+e.replace(/:$/,"").replace(/^:/,"")+":";var r=i.emojioneList[e];return r?h>4?_(t,r,e):(h>3&&(r=r.unicode),_(t,r[r.length-1],e)):n?"":e}))}function v(e){var t,n;if(window.getSelection){if((t=window.getSelection()).getRangeAt&&t.rangeCount){(n=t.getRangeAt(0)).deleteContents();var r=document.createElement("div");r.innerHTML=e;for(var i,a,o=document.createDocumentFragment();i=r.firstChild;)a=o.appendChild(i);n.insertNode(o),a&&((n=n.cloneRange()).setStartAfter(a),n.collapse(!0),t.removeAllRanges(),t.addRange(n))}}else document.selection&&"Control"!=document.selection.type&&document.selection.createRange().pasteHTML(e)}function y(){return window.emojioneVersion||"3.1.2"}function w(e){return"object"==typeof e}function C(e){var t;return e.cacheBustParam?(t=e.cacheBustParam,w(e.jsEscapeMap)?"?v=1.2.4"===t?"2.0.0":"?v=2.0.1"===t?"2.1.0":"?v=2.1.1"===t?"2.1.1":"?v=2.1.2"===t?"2.1.2":"?v=2.1.3"===t?"2.1.3":"?v=2.1.4"===t?"2.1.4":"2.2.7":"1.5.2"):e.emojiVersion}function A(e){switch(e){case"1.5.2":return 0;case"2.0.0":return 1;case"2.1.0":case"2.1.1":return 2;case"2.1.2":return 3;case"2.1.3":case"2.1.4":case"2.2.7":return 4;case"3.0.1":case"3.0.2":case"3.0.3":case"3.0":return 5;case"3.1.0":case"3.1.1":case"3.1.2":case"3.1":default:return 6}}function S(){if(e.fn.emojioneArea&&e.fn.emojioneArea.defaults)return e.fn.emojioneArea.defaults;var t={attributes:{dir:"ltr",spellcheck:!1,autocomplete:"off",autocorrect:"off",autocapitalize:"off"},search:!0,placeholder:null,emojiPlaceholder:":smiley:",searchPlaceholder:"SEARCH",container:null,hideSource:!0,shortnames:!0,sprite:!0,pickerPosition:"top",filtersPosition:"top",searchPosition:"top",hidePickerOnBlur:!0,buttonTitle:"Use the TAB key to insert emoji faster",tones:!0,tonesStyle:"bullet",inline:null,saveEmojisAs:"unicode",shortcuts:!0,autocomplete:!0,autocompleteTones:!1,standalone:!1,useInternalCDN:!0,imageType:"png",recentEmojis:!0,textcomplete:{maxCount:15,placement:null}},n=A(i?C(i):y());return t.filters=n>4?{tones:{title:"Diversity",emoji:"open_hands raised_hands palms_up_together clap pray thumbsup thumbsdown punch fist left_facing_fist right_facing_fist fingers_crossed v metal love_you_gesture ok_hand point_left point_right point_up_2 point_down point_up raised_hand raised_back_of_hand hand_splayed vulcan wave call_me muscle middle_finger writing_hand selfie nail_care ear nose baby boy girl man woman blond-haired_woman blond-haired_man older_man older_woman man_with_chinese_cap woman_wearing_turban man_wearing_turban woman_police_officer man_police_officer woman_construction_worker man_construction_worker woman_guard man_guard woman_detective man_detective woman_health_worker man_health_worker woman_farmer man_farmer woman_cook man_cook woman_student man_student woman_singer man_singer woman_teacher man_teacher woman_factory_worker man_factory_worker woman_technologist man_technologist woman_office_worker man_office_worker woman_mechanic man_mechanic woman_scientist man_scientist woman_artist man_artist woman_firefighter man_firefighter woman_pilot man_pilot woman_astronaut man_astronaut woman_judge man_judge mrs_claus santa princess prince bride_with_veil man_in_tuxedo angel pregnant_woman breast_feeding woman_bowing man_bowing man_tipping_hand woman_tipping_hand man_gesturing_no woman_gesturing_no man_gesturing_ok woman_gesturing_ok man_raising_hand woman_raising_hand woman_facepalming man_facepalming woman_shrugging man_shrugging man_pouting woman_pouting man_frowning woman_frowning man_getting_haircut woman_getting_haircut man_getting_face_massage woman_getting_face_massage man_in_business_suit_levitating dancer man_dancing woman_walking man_walking woman_running man_running adult child older_adult bearded_person woman_with_headscarf woman_mage man_mage woman_fairy man_fairy woman_vampire man_vampire mermaid merman woman_elf man_elf snowboarder woman_lifting_weights man_lifting_weights woman_cartwheeling man_cartwheeling woman_bouncing_ball man_bouncing_ball woman_playing_handball man_playing_handball woman_golfing man_golfing woman_surfing man_surfing woman_swimming man_swimming woman_playing_water_polo man_playing_water_polo woman_rowing_boat man_rowing_boat horse_racing woman_biking man_biking woman_mountain_biking man_mountain_biking woman_juggling man_juggling woman_in_steamy_room man_in_steamy_room woman_climbing man_climbing woman_in_lotus_position man_in_lotus_position bath person_in_bed"},recent:{icon:"clock3",title:"Recent",emoji:""},smileys_people:{icon:"yum",title:"Smileys & People",emoji:"grinning smiley smile grin laughing sweat_smile joy rofl relaxed blush innocent slight_smile upside_down wink relieved crazy_face star_struck heart_eyes kissing_heart kissing kissing_smiling_eyes kissing_closed_eyes yum stuck_out_tongue_winking_eye stuck_out_tongue_closed_eyes stuck_out_tongue money_mouth hugging nerd sunglasses cowboy smirk unamused disappointed pensive worried face_with_raised_eyebrow face_with_monocle confused slight_frown frowning2 persevere confounded tired_face weary triumph angry rage face_with_symbols_over_mouth no_mouth neutral_face expressionless hushed frowning anguished open_mouth astonished dizzy_face exploding_head flushed scream fearful cold_sweat cry disappointed_relieved drooling_face sob sweat sleepy sleeping rolling_eyes thinking shushing_face face_with_hand_over_mouth lying_face grimacing zipper_mouth face_vomiting nauseated_face sneezing_face mask thermometer_face head_bandage smiling_imp imp japanese_ogre japanese_goblin poop ghost skull skull_crossbones alien space_invader robot jack_o_lantern clown smiley_cat smile_cat joy_cat heart_eyes_cat smirk_cat kissing_cat scream_cat crying_cat_face pouting_cat open_hands raised_hands palms_up_together clap pray handshake thumbsup thumbsdown punch fist left_facing_fist right_facing_fist fingers_crossed v metal love_you_gesture ok_hand point_left point_right point_up_2 point_down point_up raised_hand raised_back_of_hand hand_splayed vulcan wave call_me muscle middle_finger writing_hand selfie nail_care ring lipstick kiss lips tongue ear nose footprints eye eyes speaking_head bust_in_silhouette busts_in_silhouette baby boy girl man woman blond-haired_woman blond_haired_man older_man older_woman man_with_chinese_cap woman_wearing_turban man_wearing_turban woman_police_officer police_officer woman_construction_worker construction_worker woman_guard guard woman_detective detective woman_health_worker man_health_worker woman_farmer man_farmer woman_cook man_cook woman_student man_student woman_singer man_singer woman_teacher man_teacher woman_factory_worker man_factory_worker woman_technologist man_technologist woman_office_worker man_office_worker woman_mechanic man_mechanic woman_scientist man_scientist woman_artist man_artist woman_firefighter man_firefighter woman_pilot man_pilot woman_astronaut man_astronaut woman_judge man_judge mrs_claus santa princess prince bride_with_veil man_in_tuxedo angel pregnant_woman breast_feeding woman_bowing man_bowing woman_tipping_hand man_tipping_hand woman_gesturing_no man_gesturing_no woman_gesturing_ok man_gesturing_ok woman_raising_hand man_raising_hand woman_facepalming man_facepalming woman_shrugging man_shrugging woman_pouting man_pouting woman_frowning man_frowning woman_getting_haircut man_getting_haircut woman_getting_face_massage man_getting_face_massage man_in_business_suit_levitating dancer man_dancing women_with_bunny_ears_partying men_with_bunny_ears_partying woman_walking man_walking woman_running man_running couple two_women_holding_hands two_men_holding_hands couple_with_heart couple_ww couple_mm couplekiss kiss_ww kiss_mm family family_mwg family_mwgb family_mwbb family_mwgg family_wwb family_wwg family_wwgb family_wwbb family_wwgg family_mmb family_mmg family_mmgb family_mmbb family_mmgg family_woman_boy family_woman_girl family_woman_girl_boy family_woman_boy_boy family_woman_girl_girl family_man_boy family_man_girl family_man_girl_boy family_man_boy_boy family_man_girl_girl bearded_person woman_with_headscarf woman_mage man_mage woman_fairy man_fairy woman_vampire man_vampire mermaid merman woman_elf man_elf woman_genie man_genie woman_zombie man_zombie womans_clothes shirt jeans necktie dress bikini kimono high_heel sandal boot mans_shoe athletic_shoe womans_hat tophat mortar_board crown helmet_with_cross school_satchel pouch purse handbag briefcase eyeglasses dark_sunglasses closed_umbrella umbrella2 brain billed_cap scarf gloves coat socks "},animals_nature:{icon:"hamster",title:"Animals & Nature",emoji:"dog cat mouse hamster rabbit fox bear panda_face koala tiger lion_face cow pig pig_nose frog monkey_face see_no_evil hear_no_evil speak_no_evil monkey chicken penguin bird baby_chick hatching_chick hatched_chick duck eagle owl bat wolf boar horse unicorn bee bug butterfly snail shell beetle ant spider spider_web turtle snake lizard scorpion crab squid octopus shrimp tropical_fish fish blowfish dolphin shark whale whale2 crocodile leopard tiger2 water_buffalo ox cow2 deer dromedary_camel camel elephant rhino gorilla racehorse pig2 goat ram sheep dog2 poodle cat2 rooster turkey dove rabbit2 mouse2 rat chipmunk dragon giraffe zebra hedgehog sauropod t_rex cricket dragon_face feet cactus christmas_tree evergreen_tree deciduous_tree palm_tree seedling herb shamrock four_leaf_clover bamboo tanabata_tree leaves fallen_leaf maple_leaf mushroom ear_of_rice bouquet tulip rose wilted_rose sunflower blossom cherry_blossom hibiscus earth_americas earth_africa earth_asia full_moon waning_gibbous_moon last_quarter_moon waning_crescent_moon new_moon waxing_crescent_moon first_quarter_moon waxing_gibbous_moon new_moon_with_face full_moon_with_face sun_with_face first_quarter_moon_with_face last_quarter_moon_with_face crescent_moon dizzy star star2 sparkles zap fire boom comet sunny white_sun_small_cloud partly_sunny white_sun_cloud white_sun_rain_cloud rainbow cloud cloud_rain thunder_cloud_rain cloud_lightning cloud_snow snowman2 snowman snowflake wind_blowing_face dash cloud_tornado fog ocean droplet sweat_drops umbrella "},food_drink:{icon:"pizza",title:"Food & Drink",emoji:"green_apple apple pear tangerine lemon banana watermelon grapes strawberry melon cherries peach pineapple kiwi avocado tomato eggplant cucumber carrot corn hot_pepper potato sweet_potato chestnut peanuts honey_pot croissant bread french_bread cheese egg cooking bacon pancakes fried_shrimp poultry_leg meat_on_bone pizza hotdog hamburger fries stuffed_flatbread taco burrito salad shallow_pan_of_food spaghetti ramen stew fish_cake sushi bento curry rice_ball rice rice_cracker oden dango shaved_ice ice_cream icecream cake birthday custard lollipop candy chocolate_bar popcorn doughnut cookie milk baby_bottle coffee tea sake beer beers champagne_glass wine_glass tumbler_glass cocktail tropical_drink champagne spoon fork_and_knife fork_knife_plate dumpling fortune_cookie takeout_box chopsticks bowl_with_spoon cup_with_straw coconut broccoli pie pretzel cut_of_meat sandwich canned_food"},activity:{icon:"basketball",title:"Activity",emoji:"soccer basketball football baseball tennis volleyball rugby_football 8ball ping_pong badminton goal hockey field_hockey cricket_game golf bow_and_arrow fishing_pole_and_fish boxing_glove martial_arts_uniform ice_skate ski skier snowboarder woman_lifting_weights man_lifting_weights person_fencing women_wrestling men_wrestling woman_cartwheeling man_cartwheeling woman_bouncing_ball man_bouncing_ball woman_playing_handball man_playing_handball woman_golfing man_golfing woman_surfing man_surfing woman_swimming man_swimming woman_playing_water_polo man_playing_water_polo woman_rowing_boat man_rowing_boat horse_racing woman_biking man_biking woman_mountain_biking man_mountain_biking woman_in_steamy_room man_in_steamy_room woman_climbing man_climbing woman_in_lotus_position man_in_lotus_position running_shirt_with_sash medal military_medal first_place second_place third_place trophy rosette reminder_ribbon ticket tickets circus_tent woman_juggling man_juggling performing_arts art clapper microphone headphones musical_score musical_keyboard drum saxophone trumpet guitar violin game_die dart bowling video_game slot_machine sled curling_stone "},travel_places:{icon:"rocket",title:"Travel & Places",emoji:"red_car taxi blue_car bus trolleybus race_car police_car ambulance fire_engine minibus truck articulated_lorry tractor scooter bike motor_scooter motorcycle rotating_light oncoming_police_car oncoming_bus oncoming_automobile oncoming_taxi aerial_tramway mountain_cableway suspension_railway railway_car train mountain_railway monorail bullettrain_side bullettrain_front light_rail steam_locomotive train2 metro tram station helicopter airplane_small airplane airplane_departure airplane_arriving rocket satellite_orbital seat canoe sailboat motorboat speedboat cruise_ship ferry ship anchor construction fuelpump busstop vertical_traffic_light traffic_light map moyai statue_of_liberty fountain tokyo_tower european_castle japanese_castle stadium ferris_wheel roller_coaster carousel_horse beach_umbrella beach island mountain mountain_snow mount_fuji volcano desert camping tent railway_track motorway construction_site factory house house_with_garden homes house_abandoned office department_store post_office european_post_office hospital bank hotel convenience_store school love_hotel wedding classical_building church mosque synagogue kaaba shinto_shrine japan rice_scene park sunrise sunrise_over_mountains stars sparkler fireworks city_sunset city_dusk cityscape night_with_stars milky_way bridge_at_night foggy flying_saucer"},objects:{icon:"bulb",title:"Objects",emoji:"watch iphone calling computer keyboard desktop printer mouse_three_button trackball joystick compression minidisc floppy_disk cd dvd vhs camera camera_with_flash video_camera movie_camera projector film_frames telephone_receiver telephone pager fax tv radio microphone2 level_slider control_knobs stopwatch timer alarm_clock clock hourglass hourglass_flowing_sand satellite battery electric_plug bulb flashlight candle wastebasket oil money_with_wings dollar yen euro pound moneybag credit_card gem scales wrench hammer hammer_pick tools pick nut_and_bolt gear chains gun bomb knife dagger crossed_swords shield smoking coffin urn amphora crystal_ball prayer_beads barber alembic telescope microscope hole pill syringe thermometer toilet potable_water shower bathtub bath bellhop key key2 door couch bed sleeping_accommodation frame_photo shopping_bags shopping_cart gift balloon flags ribbon confetti_ball tada dolls izakaya_lantern wind_chime envelope envelope_with_arrow incoming_envelope e-mail love_letter inbox_tray outbox_tray package label mailbox_closed mailbox mailbox_with_mail mailbox_with_no_mail postbox postal_horn scroll page_with_curl page_facing_up bookmark_tabs bar_chart chart_with_upwards_trend chart_with_downwards_trend notepad_spiral calendar_spiral calendar date card_index card_box ballot_box file_cabinet clipboard file_folder open_file_folder dividers newspaper2 newspaper notebook notebook_with_decorative_cover ledger closed_book green_book blue_book orange_book books book bookmark link paperclip paperclips triangular_ruler straight_ruler pushpin round_pushpin scissors pen_ballpoint pen_fountain black_nib paintbrush crayon pencil pencil2 mag mag_right lock_with_ink_pen closed_lock_with_key lock unlock"},symbols:{icon:"heartpulse",title:"Symbols",emoji:"heart orange_heart yellow_heart green_heart blue_heart purple_heart black_heart broken_heart heart_exclamation two_hearts revolving_hearts heartbeat heartpulse sparkling_heart cupid gift_heart heart_decoration peace cross star_and_crescent om_symbol wheel_of_dharma star_of_david six_pointed_star menorah yin_yang orthodox_cross place_of_worship ophiuchus aries taurus gemini cancer leo virgo libra scorpius sagittarius capricorn aquarius pisces id atom accept radioactive biohazard mobile_phone_off vibration_mode u6709 u7121 u7533 u55b6 u6708 eight_pointed_black_star vs white_flower ideograph_advantage secret congratulations u5408 u6e80 u5272 u7981 a b ab cl o2 sos x o octagonal_sign no_entry name_badge no_entry_sign 100 anger hotsprings no_pedestrians do_not_litter no_bicycles non-potable_water underage no_mobile_phones no_smoking exclamation grey_exclamation question grey_question bangbang interrobang low_brightness high_brightness part_alternation_mark warning children_crossing trident fleur-de-lis beginner recycle white_check_mark u6307 chart sparkle eight_spoked_asterisk negative_squared_cross_mark globe_with_meridians diamond_shape_with_a_dot_inside m cyclone zzz atm wc wheelchair parking u7a7a sa passport_control customs baggage_claim left_luggage mens womens baby_symbol restroom put_litter_in_its_place cinema signal_strength koko symbols information_source abc abcd capital_abcd ng ok up cool new free zero one two three four five six seven eight nine keycap_ten 1234 hash asterisk arrow_forward pause_button play_pause stop_button record_button eject track_next track_previous fast_forward rewind arrow_double_up arrow_double_down arrow_backward arrow_up_small arrow_down_small arrow_right arrow_left arrow_up arrow_down arrow_upper_right arrow_lower_right arrow_lower_left arrow_upper_left arrow_up_down left_right_arrow arrow_right_hook leftwards_arrow_with_hook arrow_heading_up arrow_heading_down twisted_rightwards_arrows repeat repeat_one arrows_counterclockwise arrows_clockwise musical_note notes heavy_plus_sign heavy_minus_sign heavy_division_sign heavy_multiplication_x heavy_dollar_sign currency_exchange tm copyright registered wavy_dash curly_loop loop end back on top soon heavy_check_mark ballot_box_with_check radio_button white_circle black_circle red_circle blue_circle small_red_triangle small_red_triangle_down small_orange_diamond small_blue_diamond large_orange_diamond large_blue_diamond white_square_button black_square_button black_small_square white_small_square black_medium_small_square white_medium_small_square black_medium_square white_medium_square black_large_square white_large_square speaker mute sound loud_sound bell no_bell mega loudspeaker speech_left eye_in_speech_bubble speech_balloon thought_balloon anger_right spades clubs hearts diamonds black_joker flower_playing_cards mahjong clock1 clock2 clock3 clock4 clock5 clock6 clock7 clock8 clock9 clock10 clock11 clock12 clock130 clock230 clock330 clock430 clock530 clock630 clock730 clock830 clock930 clock1030 clock1130 clock1230"},flags:{icon:"flag_gb",title:"Flags",emoji:"flag_white flag_black checkered_flag triangular_flag_on_post rainbow_flag flag_af flag_ax flag_al flag_dz flag_as flag_ad flag_ao flag_ai flag_aq flag_ag flag_ar flag_am flag_aw flag_au flag_at flag_az flag_bs flag_bh flag_bd flag_bb flag_by flag_be flag_bz flag_bj flag_bm flag_bt flag_bo flag_ba flag_bw flag_br flag_io flag_vg flag_bn flag_bg flag_bf flag_bi flag_kh flag_cm flag_ca flag_ic flag_cv flag_bq flag_ky flag_cf flag_td flag_cl flag_cn flag_cx flag_cc flag_co flag_km flag_cg flag_cd flag_ck flag_cr flag_ci flag_hr flag_cu flag_cw flag_cy flag_cz flag_dk flag_dj flag_dm flag_do flag_ec flag_eg flag_sv flag_gq flag_er flag_ee flag_et flag_eu flag_fk flag_fo flag_fj flag_fi flag_fr flag_gf flag_pf flag_tf flag_ga flag_gm flag_ge flag_de flag_gh flag_gi flag_gr flag_gl flag_gd flag_gp flag_gu flag_gt flag_gg flag_gn flag_gw flag_gy flag_ht flag_hn flag_hk flag_hu flag_is flag_in flag_id flag_ir flag_iq flag_ie flag_im flag_il flag_it flag_jm flag_jp crossed_flags flag_je flag_jo flag_kz flag_ke flag_ki flag_xk flag_kw flag_kg flag_la flag_lv flag_lb flag_ls flag_lr flag_ly flag_li flag_lt flag_lu flag_mo flag_mk flag_mg flag_mw flag_my flag_mv flag_ml flag_mt flag_mh flag_mq flag_mr flag_mu flag_yt flag_mx flag_fm flag_md flag_mc flag_mn flag_me flag_ms flag_ma flag_mz flag_mm flag_na flag_nr flag_np flag_nl flag_nc flag_nz flag_ni flag_ne flag_ng flag_nu flag_nf flag_kp flag_mp flag_no flag_om flag_pk flag_pw flag_ps flag_pa flag_pg flag_py flag_pe flag_ph flag_pn flag_pl flag_pt flag_pr flag_qa flag_re flag_ro flag_ru flag_rw flag_ws flag_sm flag_st flag_sa flag_sn flag_rs flag_sc flag_sl flag_sg flag_sx flag_sk flag_si flag_gs flag_sb flag_so flag_za flag_kr flag_ss flag_es flag_lk flag_bl flag_sh flag_kn flag_lc flag_pm flag_vc flag_sd flag_sr flag_sz flag_se flag_ch flag_sy flag_tw flag_tj flag_tz flag_th flag_tl flag_tg flag_tk flag_to flag_tt flag_tn flag_tr flag_tm flag_tc flag_tv flag_vi flag_ug flag_ua flag_ae flag_gb flag_us flag_uy flag_uz flag_vu flag_va flag_ve flag_vn flag_wf flag_eh flag_ye flag_zm flag_zw flag_ac flag_ta flag_bv flag_hm flag_sj flag_um flag_ea flag_cp flag_dg flag_mf united_nations england scotland wales"}}:{tones:{title:"Diversity",emoji:"santa runner surfer swimmer lifter ear nose point_up_2 point_down point_left point_right punch wave ok_hand thumbsup thumbsdown clap open_hands boy girl man woman cop bride_with_veil person_with_blond_hair man_with_gua_pi_mao man_with_turban older_man grandma baby construction_worker princess angel information_desk_person guardsman dancer nail_care massage haircut muscle spy hand_splayed middle_finger vulcan no_good ok_woman bow raising_hand raised_hands person_frowning person_with_pouting_face pray rowboat bicyclist mountain_bicyclist walking bath metal point_up basketball_player fist raised_hand v writing_hand"},recent:{icon:"clock3",title:"Recent",emoji:""},smileys_people:{icon:"yum",title:"Smileys & People",emoji:"grinning grimacing grin joy smiley smile sweat_smile laughing innocent wink blush slight_smile upside_down relaxed yum relieved heart_eyes kissing_heart kissing kissing_smiling_eyes kissing_closed_eyes stuck_out_tongue_winking_eye stuck_out_tongue_closed_eyes stuck_out_tongue money_mouth nerd sunglasses hugging smirk no_mouth neutral_face expressionless unamused rolling_eyes thinking flushed disappointed worried angry rage pensive confused slight_frown frowning2 persevere confounded tired_face weary triumph open_mouth scream fearful cold_sweat hushed frowning anguished cry disappointed_relieved sleepy sweat sob dizzy_face astonished zipper_mouth mask thermometer_face head_bandage sleeping zzz poop smiling_imp imp japanese_ogre japanese_goblin skull ghost alien robot smiley_cat smile_cat joy_cat heart_eyes_cat smirk_cat kissing_cat scream_cat crying_cat_face pouting_cat raised_hands clap wave thumbsup thumbsdown punch fist v ok_hand raised_hand open_hands muscle pray point_up point_up_2 point_down point_left point_right middle_finger hand_splayed metal vulcan writing_hand nail_care lips tongue ear nose eye eyes bust_in_silhouette busts_in_silhouette speaking_head baby boy girl man woman person_with_blond_hair older_man older_woman man_with_gua_pi_mao man_with_turban cop construction_worker guardsman spy santa angel princess bride_with_veil walking runner dancer dancers couple two_men_holding_hands two_women_holding_hands bow information_desk_person no_good ok_woman raising_hand person_with_pouting_face person_frowning haircut massage couple_with_heart couple_ww couple_mm couplekiss kiss_ww kiss_mm family family_mwg family_mwgb family_mwbb family_mwgg family_wwb family_wwg family_wwgb family_wwbb family_wwgg family_mmb family_mmg family_mmgb family_mmbb family_mmgg womans_clothes shirt jeans necktie dress bikini kimono lipstick kiss footprints high_heel sandal boot mans_shoe athletic_shoe womans_hat tophat helmet_with_cross mortar_board crown school_satchel pouch purse handbag briefcase eyeglasses dark_sunglasses ring closed_umbrella"},animals_nature:{icon:"hamster",title:"Animals & Nature",emoji:"dog cat mouse hamster rabbit bear panda_face koala tiger lion_face cow pig pig_nose frog octopus monkey_face see_no_evil hear_no_evil speak_no_evil monkey chicken penguin bird baby_chick hatching_chick hatched_chick wolf boar horse unicorn bee bug snail beetle ant spider scorpion crab snake turtle tropical_fish fish blowfish dolphin whale whale2 crocodile leopard tiger2 water_buffalo ox cow2 dromedary_camel camel elephant goat ram sheep racehorse pig2 rat mouse2 rooster turkey dove dog2 poodle cat2 rabbit2 chipmunk feet dragon dragon_face cactus christmas_tree evergreen_tree deciduous_tree palm_tree seedling herb shamrock four_leaf_clover bamboo tanabata_tree leaves fallen_leaf maple_leaf ear_of_rice hibiscus sunflower rose tulip blossom cherry_blossom bouquet mushroom chestnut jack_o_lantern shell spider_web earth_americas earth_africa earth_asia full_moon waning_gibbous_moon last_quarter_moon waning_crescent_moon new_moon waxing_crescent_moon first_quarter_moon waxing_gibbous_moon new_moon_with_face full_moon_with_face first_quarter_moon_with_face last_quarter_moon_with_face sun_with_face crescent_moon star star2 dizzy sparkles comet sunny white_sun_small_cloud partly_sunny white_sun_cloud white_sun_rain_cloud cloud cloud_rain thunder_cloud_rain cloud_lightning zap fire boom snowflake cloud_snow snowman2 snowman wind_blowing_face dash cloud_tornado fog umbrella2 umbrella droplet sweat_drops ocean"},food_drink:{icon:"pizza",title:"Food & Drink",emoji:"green_apple apple pear tangerine lemon banana watermelon grapes strawberry melon cherries peach pineapple tomato eggplant hot_pepper corn sweet_potato honey_pot bread cheese poultry_leg meat_on_bone fried_shrimp egg hamburger fries hotdog pizza spaghetti taco burrito ramen stew fish_cake sushi bento curry rice_ball rice rice_cracker oden dango shaved_ice ice_cream icecream cake birthday custard candy lollipop chocolate_bar popcorn doughnut cookie beer beers wine_glass cocktail tropical_drink champagne sake tea coffee baby_bottle fork_and_knife fork_knife_plate"},activity:{icon:"basketball",title:"Activity",emoji:"soccer basketball football baseball tennis volleyball rugby_football 8ball golf golfer ping_pong badminton hockey field_hockey cricket ski skier snowboarder ice_skate bow_and_arrow fishing_pole_and_fish rowboat swimmer surfer bath basketball_player lifter bicyclist mountain_bicyclist horse_racing levitate trophy running_shirt_with_sash medal military_medal reminder_ribbon rosette ticket tickets performing_arts art circus_tent microphone headphones musical_score musical_keyboard saxophone trumpet guitar violin clapper video_game space_invader dart game_die slot_machine bowling"},travel_places:{icon:"rocket",title:"Travel & Places",emoji:"red_car taxi blue_car bus trolleybus race_car police_car ambulance fire_engine minibus truck articulated_lorry tractor motorcycle bike rotating_light oncoming_police_car oncoming_bus oncoming_automobile oncoming_taxi aerial_tramway mountain_cableway suspension_railway railway_car train monorail bullettrain_side bullettrain_front light_rail mountain_railway steam_locomotive train2 metro tram station helicopter airplane_small airplane airplane_departure airplane_arriving sailboat motorboat speedboat ferry cruise_ship rocket satellite_orbital seat anchor construction fuelpump busstop vertical_traffic_light traffic_light checkered_flag ship ferris_wheel roller_coaster carousel_horse construction_site foggy tokyo_tower factory fountain rice_scene mountain mountain_snow mount_fuji volcano japan camping tent park motorway railway_track sunrise sunrise_over_mountains desert beach island city_sunset city_dusk cityscape night_with_stars bridge_at_night milky_way stars sparkler fireworks rainbow homes european_castle japanese_castle stadium statue_of_liberty house house_with_garden house_abandoned office department_store post_office european_post_office hospital bank hotel convenience_store school love_hotel wedding classical_building church mosque synagogue kaaba shinto_shrine"},objects:{icon:"bulb",title:"Objects",emoji:"watch iphone calling computer keyboard desktop printer mouse_three_button trackball joystick compression minidisc floppy_disk cd dvd vhs camera camera_with_flash video_camera movie_camera projector film_frames telephone_receiver telephone pager fax tv radio microphone2 level_slider control_knobs stopwatch timer alarm_clock clock hourglass_flowing_sand hourglass satellite battery electric_plug bulb flashlight candle wastebasket oil money_with_wings dollar yen euro pound moneybag credit_card gem scales wrench hammer hammer_pick tools pick nut_and_bolt gear chains gun bomb knife dagger crossed_swords shield smoking skull_crossbones coffin urn amphora crystal_ball prayer_beads barber alembic telescope microscope hole pill syringe thermometer label bookmark toilet shower bathtub key key2 couch sleeping_accommodation bed door bellhop frame_photo map beach_umbrella moyai shopping_bags balloon flags ribbon gift confetti_ball tada dolls wind_chime crossed_flags izakaya_lantern envelope envelope_with_arrow incoming_envelope e-mail love_letter postbox mailbox_closed mailbox mailbox_with_mail mailbox_with_no_mail package postal_horn inbox_tray outbox_tray scroll page_with_curl bookmark_tabs bar_chart chart_with_upwards_trend chart_with_downwards_trend page_facing_up date calendar calendar_spiral card_index card_box ballot_box file_cabinet clipboard notepad_spiral file_folder open_file_folder dividers newspaper2 newspaper notebook closed_book green_book blue_book orange_book notebook_with_decorative_cover ledger books book link paperclip paperclips scissors triangular_ruler straight_ruler pushpin round_pushpin triangular_flag_on_post flag_white flag_black closed_lock_with_key lock unlock lock_with_ink_pen pen_ballpoint pen_fountain black_nib pencil pencil2 crayon paintbrush mag mag_right"},symbols:{icon:"heartpulse",title:"Symbols",emoji:"heart yellow_heart green_heart blue_heart purple_heart broken_heart heart_exclamation two_hearts revolving_hearts heartbeat heartpulse sparkling_heart cupid gift_heart heart_decoration peace cross star_and_crescent om_symbol wheel_of_dharma star_of_david six_pointed_star menorah yin_yang orthodox_cross place_of_worship ophiuchus aries taurus gemini cancer leo virgo libra scorpius sagittarius capricorn aquarius pisces id atom u7a7a u5272 radioactive biohazard mobile_phone_off vibration_mode u6709 u7121 u7533 u55b6 u6708 eight_pointed_black_star vs accept white_flower ideograph_advantage secret congratulations u5408 u6e80 u7981 a b ab cl o2 sos no_entry name_badge no_entry_sign x o anger hotsprings no_pedestrians do_not_litter no_bicycles non-potable_water underage no_mobile_phones exclamation grey_exclamation question grey_question bangbang interrobang 100 low_brightness high_brightness trident fleur-de-lis part_alternation_mark warning children_crossing beginner recycle u6307 chart sparkle eight_spoked_asterisk negative_squared_cross_mark white_check_mark diamond_shape_with_a_dot_inside cyclone loop globe_with_meridians m atm sa passport_control customs baggage_claim left_luggage wheelchair no_smoking wc parking potable_water mens womens baby_symbol restroom put_litter_in_its_place cinema signal_strength koko ng ok up cool new free zero one two three four five six seven eight nine ten 1234 arrow_forward pause_button play_pause stop_button record_button track_next track_previous fast_forward rewind twisted_rightwards_arrows repeat repeat_one arrow_backward arrow_up_small arrow_down_small arrow_double_up arrow_double_down arrow_right arrow_left arrow_up arrow_down arrow_upper_right arrow_lower_right arrow_lower_left arrow_upper_left arrow_up_down left_right_arrow arrows_counterclockwise arrow_right_hook leftwards_arrow_with_hook arrow_heading_up arrow_heading_down hash asterisk information_source abc abcd capital_abcd symbols musical_note notes wavy_dash curly_loop heavy_check_mark arrows_clockwise heavy_plus_sign heavy_minus_sign heavy_division_sign heavy_multiplication_x heavy_dollar_sign currency_exchange copyright registered tm end back on top soon ballot_box_with_check radio_button white_circle black_circle red_circle large_blue_circle small_orange_diamond small_blue_diamond large_orange_diamond large_blue_diamond small_red_triangle black_small_square white_small_square black_large_square white_large_square small_red_triangle_down black_medium_square white_medium_square black_medium_small_square white_medium_small_square black_square_button white_square_button speaker sound loud_sound mute mega loudspeaker bell no_bell black_joker mahjong spades clubs hearts diamonds flower_playing_cards thought_balloon anger_right speech_balloon clock1 clock2 clock3 clock4 clock5 clock6 clock7 clock8 clock9 clock10 clock11 clock12 clock130 clock230 clock330 clock430 clock530 clock630 clock730 clock830 clock930 clock1030 clock1130 clock1230 eye_in_speech_bubble"},flags:{icon:"flag_gb",title:"Flags",emoji:"ac af al dz ad ao ai ag ar am aw au at az bs bh bd bb by be bz bj bm bt bo ba bw br bn bg bf bi cv kh cm ca ky cf td flag_cl cn co km cg flag_cd cr hr cu cy cz dk dj dm do ec eg sv gq er ee et fk fo fj fi fr pf ga gm ge de gh gi gr gl gd gu gt gn gw gy ht hn hk hu is in flag_id ir iq ie il it ci jm jp je jo kz ke ki xk kw kg la lv lb ls lr ly li lt lu mo mk mg mw my mv ml mt mh mr mu mx fm md mc mn me ms ma mz mm na nr np nl nc nz ni ne flag_ng nu kp no om pk pw ps pa pg py pe ph pl pt pr qa ro ru rw sh kn lc vc ws sm st flag_sa sn rs sc sl sg sk si sb so za kr es lk sd sr sz se ch sy tw tj tz th tl tg to tt tn tr flag_tm flag_tm ug ua ae gb us vi uy uz vu va ve vn wf eh ye zm zw re ax ta io bq cx cc gg im yt nf pn bl pm gs tk bv hm sj um ic ea cp dg as aq vg ck cw eu gf tf gp mq mp sx ss tc "}},t}function x(t){var n=S();if(t&&t.filters){var r=n.filters;e.each(t.filters,(function(t,n){return!w(n)||e.isEmptyObject(n)?void delete r[t]:void e.each(n,(function(e,n){r[t][e]=n}))})),t.filters=r}return e.extend({},n,t)}function T(e,t){return e.replace(c,(function(e){var n=i[0===h?"jsecapeMap":"jsEscapeMap"];return void 0!==e&&e in n?_(t,n[e]):e}))}function k(e,t){return e=e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;").replace(/`/g,"&#x60;").replace(/(?:\r\n|\r|\n)/g,"\n").replace(/(\n+)/g,"<div>$1</div>").replace(/\n/g,"<br/>").replace(/<br\/><\/div>/g,"</div>"),t.shortnames&&(e=i.shortnameToUnicode(e)),T(e,t.emojiTemplate).replace(/\t/g,"&nbsp;&nbsp;&nbsp;&nbsp;").replace(/  /g,"&nbsp;&nbsp;")}function E(e,t){switch(e=e.replace(/&#10;/g,"\n").replace(/&#09;/g,"\t").replace(/<img[^>]*alt="([^"]+)"[^>]*>/gi,"$1").replace(/\n|\r/g,"").replace(/<br[^>]*>/gi,"\n").replace(/(?:<(?:div|p|ol|ul|li|pre|code|object)[^>]*>)+/gi,"<div>").replace(/(?:<\/(?:div|p|ol|ul|li|pre|code|object)>)+/gi,"</div>").replace(/\n<div><\/div>/gi,"\n").replace(/<div><\/div>\n/gi,"\n").replace(/(?:<div>)+<\/div>/gi,"\n").replace(/([^\n])<\/div><div>/gi,"$1\n").replace(/(?:<\/div>)+/gi,"</div>").replace(/([^\n])<\/div>([^\n])/gi,"$1\n$2").replace(/<\/div>/gi,"").replace(/([^\n])<div>/gi,"$1\n").replace(/\n<div>/gi,"\n").replace(/<div>\n/gi,"\n\n").replace(/<(?:[^>]+)?>/g,"").replace(new RegExp(p,"g"),"").replace(/&nbsp;/g," ").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&quot;/g,'"').replace(/&#x27;/g,"'").replace(/&#x60;/g,"`").replace(/&#60;/g,"<").replace(/&#62;/g,">").replace(/&amp;/g,"&"),t.saveEmojisAs){case"image":e=T(e,t.emojiTemplate);break;case"shortname":e=i.toShort(e)}return e}function D(){var e=this,t=e.editor[0].offsetWidth-e.editor[0].clientWidth,n=parseInt(e.button.css("marginRight"));n!==t&&(e.button.css({marginRight:t}),e.floatingPicker&&e.picker.css({right:parseInt(e.picker.css("right"))-n+t}))}function I(){var t=this;if(!t.sprite&&t.lasyEmoji[0]&&t.lasyEmoji.eq(0).is(".lazy-emoji")){var n=t.picker.offset().top,r=n+t.picker.height()+20;t.lasyEmoji.each((function(){var t=e(this),i=t.offset().top;if(i>n&&i<r&&t.attr("src",t.data("src")).removeClass("lazy-emoji"),i>r)return!1})),t.lasyEmoji=t.lasyEmoji.filter(".lazy-emoji")}}function P(e,t){return(t?"":".")+d+(e?"-"+e:"")}function M(t){var n=e("<div/>",w(t)?t:{class:P(t,!0)});return e.each(f.call(arguments).slice(1),(function(t,r){e.isFunction(r)&&(r=r.call(n)),r&&e(r).appendTo(n)})),n}function $(){return localStorage.getItem("recent_emojis")||""}function O(t,n){var r=$();if(!t.recent||t.recent!==r||n){if(r.length){var i,a,o=t.scrollArea.is(".skinnable");o||(i=t.scrollArea.scrollTop(),n&&t.recentCategory.show(),a=t.recentCategory.is(":visible")?t.recentCategory.height():0);var s=b(r,t.emojiBtnTemplate,!0).split("|").join("");if(t.recentCategory.children(".emojibtn").remove(),e(s).insertAfter(t.recentCategory.children(".emojionearea-category-title")),t.recentCategory.children(".emojibtn").on("click",(function(){t.trigger("emojibtn.click",e(this))})),t.recentFilter.show(),!o){t.recentCategory.show();var l=t.recentCategory.height();a!==l&&t.scrollArea.scrollTop(i+l-a)}}else t.recentFilter.hasClass("active")&&t.recentFilter.removeClass("active").next().addClass("active"),t.recentCategory.hide(),t.recentFilter.hide();t.recent=r}}function R(t,n,r){t.options=r=x(r),t.sprite=r.sprite&&h<3,t.inline=null===r.inline?n.is("INPUT"):r.inline,t.shortnames=r.shortnames,t.saveEmojisAs=r.saveEmojisAs,t.standalone=r.standalone,t.emojiTemplate='<img alt="{alt}" class="emojione'+(t.sprite?'-{uni}" src="'+u+'"/>':'emoji" src="{img}"/>'),t.emojiTemplateAlt=t.sprite?'<i class="emojione-{uni}"/>':'<img class="emojioneemoji" src="{img}"/>',t.emojiBtnTemplate='<i class="emojibtn" role="button" data-name="{name}" title="{friendlyName}">'+t.emojiTemplateAlt+"</i>",t.recentEmojis=r.recentEmojis&&function(){var e="test";try{return localStorage.setItem(e,e),localStorage.removeItem(e),!0}catch(e){return!1}}();var a=r.pickerPosition;t.floatingPicker="top"===a||"bottom"===a,t.source=n,(n.is(":disabled")||n.is(".disabled"))&&t.disable();var o,c,f,_,y,C,A,S,T,R,N=n.is("TEXTAREA")||n.is("INPUT")?"val":"text",L=M("tones",r.tones?function(){this.addClass(P("tones-"+r.tonesStyle,!0));for(var t=0;t<=5;t++)this.append(e("<i/>",{class:"btn-tone btn-tone-"+t+(t?"":" active"),"data-skin":t,role:"button"}))}:null),F=M({class:d+(t.standalone?" "+d+"-standalone ":" ")+(n.attr("class")||""),role:"application"},o=t.editor=M("editor").attr({contenteditable:!t.standalone,placeholder:r.placeholder||n.data("placeholder")||n.attr("placeholder")||"",tabindex:0}),c=t.button=M("button",M("button-open"),M("button-close")).attr("title",r.buttonTitle),f=t.picker=M("picker",M("wrapper",_=M("filters"),r.search?C=M("search-panel",M("search",r.search?function(){t.search=e("<input/>",{placeholder:r.searchPlaceholder||"",type:"text",class:"search"}),this.append(t.search)}:null),L):null,R=M("scroll-area",r.tones&&!r.search?M("tones-panel",L):null,A=M("emojis-list")))).addClass(P("picker-position-"+r.pickerPosition,!0)).addClass(P("filters-position-"+r.filtersPosition,!0)).addClass(P("search-position-"+r.searchPosition,!0)).addClass("hidden"));r.search&&C.addClass(P("with-search",!0)),t.searchSel=null,o.data(n.data()),e.each(r.attributes,(function(e,t){o.attr(e,t)}));var G=M("category-block").attr({"data-tone":0}).prependTo(A);if(e.each(r.filters,(function(n,i){var a=0;if("recent"!==n||t.recentEmojis){if("tones"!==n)e("<i/>",{class:P("filter",!0)+" "+P("filter-"+n,!0),"data-filter":n,title:i.title}).wrapInner(b(i.icon,t.emojiTemplateAlt)).appendTo(_);else{if(!r.tones)return;a=5}do{var o,s=i.emoji.replace(/[\s,;]+/g,"|");o=0===a?M("category").attr({name:n,"data-tone":a}).appendTo(G):M("category-block").attr({name:n,"data-tone":a}).appendTo(A),a>0&&(o.hide(),s=s.split("|").join("_tone"+a+"|")+"_tone"+a),"recent"===n&&(s=$()),s=b(s,t.sprite?'<i class="emojibtn" role="button" data-name="{name}" title="{friendlyName}"><i class="emojione-{uni}"></i></i>':'<i class="emojibtn" role="button" data-name="{name}" title="{friendlyName}"><img class="emojioneemoji lazy-emoji" data-src="{img}"/></i>',!0).split("|").join(""),o.html(s),e('<div class="emojionearea-category-title"/>').text(i.title).prependTo(o)}while(--a>0)}})),r.filters=null,t.sprite||(t.lasyEmoji=A.find(".lazy-emoji")),(y=_.find(P("filter"))).eq(0).addClass("active"),T=A.find(P("category-block")),S=A.find(P("category")),t.recentFilter=y.filter('[data-filter="recent"]'),t.recentCategory=S.filter("[name=recent]"),t.scrollArea=R,r.container?e(r.container).wrapInner(F):F.insertAfter(n),r.hideSource&&n.hide(),t.setText(n[N]()),n[N](t.getText()),D.apply(t),t.standalone&&!t.getText().length){var j=e(n).data("emoji-placeholder")||r.emojiPlaceholder;t.setText(j),o.addClass("has-placeholder")}g(t,A.find(".emojibtn"),{click:"emojibtn.click"}),g(t,window,{resize:"!resize"}),g(t,L.children(),{click:"tone.click"}),g(t,[f,c],{mousedown:"!mousedown"},o),g(t,c,{click:"button.click"}),g(t,o,{paste:"!paste"},o),g(t,o,["focus","blur"],(function(){return!t.stayFocused&&o})),g(t,f,{mousedown:"picker.mousedown",mouseup:"picker.mouseup",click:"picker.click",keyup:"picker.keyup",keydown:"picker.keydown",keypress:"picker.keypress"}),g(t,o,["mousedown","mouseup","click","keyup","keydown","keypress"]),g(t,f.find(".emojionearea-filter"),{click:"filter.click"}),g(t,n,{change:"source.change"}),r.search&&g(t,t.search,{keyup:"search.keypress",focus:"search.focus",blur:"search.blur"});var B=!1;if(R.on("scroll",(function(){if(!B&&(I.call(t),R.is(":not(.skinnable)"))){var n=S.eq(0),r=R.offset().top;S.each((function(t,i){return!(e(i).offset().top-r>=10)&&void(n=e(i))}));var i=y.filter('[data-filter="'+n.attr("name")+'"]');i[0]&&!i.is(".active")&&(y.removeClass("active"),i.addClass("active"))}})),t.on("@filter.click",(function(e){var n=e.is(".active");if(R.is(".skinnable")){if(n)return;L.children().eq(0).click()}B=!0,n||(y.filter(".active").removeClass("active"),e.addClass("active"));var r=S.filter('[name="'+e.data("filter")+'"]').offset().top,i=R.scrollTop(),a=R.offset().top;R.stop().animate({scrollTop:r+i-a-2},200,"swing",(function(){I.call(t),B=!1}))})).on("@picker.show",(function(){t.recentEmojis&&O(t),I.call(t)})).on("@tone.click",(function(e){L.children().removeClass("active");var n=e.addClass("active").data("skin");n?(R.addClass("skinnable"),T.hide().filter("[data-tone="+n+"]").show(),y.removeClass("active")):(R.removeClass("skinnable"),T.hide().filter("[data-tone=0]").show(),y.eq(0).click()),I.call(t),r.search&&t.trigger("search.keypress")})).on("@button.click",(function(e){e.is(".active")?t.hidePicker():(t.showPicker(),t.searchSel=null)})).on("@!paste",(function(n,r){var i=function(r){var i="caret-"+(new Date).getTime(),a=k(r,t);v(a),v('<i id="'+i+'"></i>'),n.scrollTop(c);var o=e("#"+i),s=o.offset().top-n.offset().top,l=n.height();(c+s>=l||c>s)&&n.scrollTop(c+s-2*l/3),o.remove(),t.stayFocused=!1,D.apply(t),m(t,"paste",[n,r,a])};if(r.originalEvent.clipboardData){var a=r.originalEvent.clipboardData.getData("text/plain");return i(a),r.preventDefault?r.preventDefault():r.stop(),r.returnValue=!1,r.stopPropagation(),!1}t.stayFocused=!0,v("<span>"+p+"</span>");var o=s(n[0]),c=n.scrollTop(),u=e("<div/>",{contenteditable:!0}).css({position:"fixed",left:"-999px",width:"1px",height:"1px",top:"20px",overflow:"hidden"}).appendTo(e("BODY")).focus();window.setTimeout((function(){n.focus(),l(n[0],o);var e=E(u.html().replace(/\r\n|\n|\r/g,"<br>"),t);u.remove(),i(e)}),200)})).on("@emojibtn.click",(function(e){o.removeClass("has-placeholder"),null!==t.searchSel&&(o.focus(),l(o[0],t.searchSel),t.searchSel=null),t.standalone?(o.html(b(e.data("name"),t.emojiTemplate)),t.trigger("blur")):(s(o[0]),v(b(e.data("name"),t.emojiTemplate))),t.recentEmojis&&function(e,t){var n=$().split("|"),r=n.indexOf(t);-1!==r&&n.splice(r,1),n.unshift(t),n.length>9&&n.pop(),localStorage.setItem("recent_emojis",n.join("|")),O(e)}(t,e.data("name")),t.trigger("search.keypress")})).on("@!resize @keyup @emojibtn.click",D).on("@!mousedown",(function(n,r){return e(r.target).hasClass("search")?(t.stayFocused=!0,null===t.searchSel&&(t.searchSel=s(n[0]))):(F.is(".focused")||n.trigger("focus"),r.preventDefault()),!1})).on("@change",(function(){var e=t.editor.html().replace(/<\/?(?:div|span|p)[^>]*>/gi,"");e.length&&!/^<br[^>]*>$/i.test(e)||t.editor.html(t.content=""),n[N](t.getText())})).on("@source.change",(function(){t.setText(n[N]()),m("change")})).on("@focus",(function(){F.addClass("focused")})).on("@blur",(function(){F.removeClass("focused"),r.hidePickerOnBlur&&t.hidePicker();var e=t.editor.html();t.content!==e?(t.content=e,m(t,"change",[t.editor]),n.trigger("blur").trigger("change")):n.trigger("blur"),r.search&&(t.search.val(""),t.trigger("search.keypress",!0))})),r.search&&t.on("@search.focus",(function(){t.stayFocused=!0,t.search.addClass("focused")})).on("@search.keypress",(function(n){var i=f.find(".emojionearea-filter"),a=r.tones?L.find("i.active").data("skin"):0,o=t.search.val().replace(/ /g,"_").replace(/"/g,'\\"');o&&o.length?(t.recentFilter.hasClass("active")&&t.recentFilter.removeClass("active").next().addClass("active"),t.recentCategory.hide(),t.recentFilter.hide(),T.each((function(){var t=function(e,t){var n=e.find('.emojibtn[data-name*="'+o+'"]');0===n.length?(e.data("tone")===t&&e.hide(),i.filter('[data-filter="'+e.attr("name")+'"]').hide()):(e.find('.emojibtn:not([data-name*="'+o+'"])').hide(),n.show(),e.data("tone")===t&&e.show(),i.filter('[data-filter="'+e.attr("name")+'"]').show())},n=e(this);0===n.data("tone")?S.filter(':not([name="recent"])').each((function(){t(e(this),0)})):t(n,a)})),B?I.call(t):R.trigger("scroll")):(O(t,!0),T.filter('[data-tone="'+L.find("i.active").data("skin")+'"]:not([name="recent"])').show(),e(".emojibtn",T).show(),i.show(),I.call(t))})).on("@search.blur",(function(){t.stayFocused=!1,t.search.removeClass("focused"),t.trigger("blur")})),r.shortcuts&&t.on("@keydown",(function(e,n){n.ctrlKey||(9==n.which?(n.preventDefault(),c.click()):27==n.which&&(n.preventDefault(),c.is(".active")&&t.hidePicker()))})),w(r.events)&&!e.isEmptyObject(r.events)&&e.each(r.events,(function(e,n){t.on(e.replace(/_/g,"."),n)})),r.autocomplete){var U=function(){var n={maxCount:r.textcomplete.maxCount,placement:r.textcomplete.placement};r.shortcuts&&(n.onKeydown=function(e,t){if(!e.ctrlKey&&13==e.which)return t.KEY_ENTER});var a=e.map(i.emojioneList,(function(e,t){return r.autocompleteTones?t:/_tone[12345]/.test(t)?null:t}));a.sort(),o.textcomplete([{id:d,match:/\B(:[\-+\w]*)$/,search:function(t,n){n(e.map(a,(function(e){return 0===e.indexOf(t)?e:null})))},template:function(e){return b(e,t.emojiTemplate)+" "+e.replace(/:/g,"")},replace:function(e){return b(e,t.emojiTemplate)},cache:!0,index:1}],n),r.textcomplete.placement&&"static"==e(o.data("textComplete").option.appendTo).css("position")&&e(o.data("textComplete").option.appendTo).css("position","relative")},H=function(){if(t.disabled){var e=function(){t.off("enabled",e),U()};t.on("enabled",e)}else U()};e.fn.textcomplete?H():e.ajax({url:"https://cdn.rawgit.com/yuku-t/jquery-textcomplete/v1.3.4/dist/jquery.textcomplete.js",dataType:"script",cache:!0,success:H})}t.inline&&(F.addClass(P("inline",!0)),t.on("@keydown",(function(e,t){13==t.which&&t.preventDefault()}))),/firefox/i.test(navigator.userAgent)&&document.execCommand("enableObjectResizing",!1,!1),t.isReady=!0,t.trigger("onLoad",o),t.trigger("ready",o)}window.getSelection&&document.createRange?(s=function(e){var t=window.getSelection&&window.getSelection();if(t&&t.rangeCount>0)return t.getRangeAt(0)},l=function(e,t){var n=document.createRange();n.setStart(t.startContainer,t.startOffset),n.setEnd(t.endContainer,t.endOffset),(t=window.getSelection()).removeAllRanges(),t.addRange(n)}):document.selection&&document.body.createTextRange&&(s=function(e){return document.selection.createRange()},l=function(e,t){var n=document.body.createTextRange();n.moveToElementText(e),n.setStart(t.startContanier,t.startOffset),n.setEnd(t.endContainer,t.endOffset),n.select()});var N={defaultBase:"https://cdnjs.cloudflare.com/ajax/libs/emojione/",defaultBase3:"https://cdn.jsdelivr.net/",base:null,isLoading:!1};function L(t){var n=y();if(t=x(t),!N.isLoading)if(!i||A(C(i))<2){var r;N.isLoading=!0,r=A(n)>5?N.defaultBase3+"npm/emojione@"+n:A(n)>4?N.defaultBase3+"emojione/"+n:N.defaultBase+"/"+n,e.ajax({url:r+"/lib/js/emojione.min.js",dataType:"script",cache:!0,success:function(){var r;for(i=window.emojione,n=C(i),(h=A(n))>4?(N.base=N.defaultBase3+"emojione/assets/"+n,r=N.base+"/sprites/emojione-sprite-"+i.emojiSize+".css"):(N.base=N.defaultBase+n+"/assets",r=N.base+"/sprites/emojione.sprites.css"),t.sprite&&(document.createStyleSheet?document.createStyleSheet(r):e("<link/>",{rel:"stylesheet",href:r}).appendTo("head"));a.length;)a.shift().call();N.isLoading=!1}})}else n=C(i),h=A(n),N.base=h>4?N.defaultBase3+"emojione/assets/"+n:N.defaultBase+n+"/assets";o((function(){var e="";t.useInternalCDN&&(h>4&&(e=i.emojiSize+"/"),i.imagePathPNG=N.base+"/png/"+e,i.imagePathSVG=N.base+"/svg/"+e,i.imagePathSVGSprites=N.base+"/sprites/emojione.sprites.svg",i.imageType=t.imageType),A(n)>4?(c=i.regUnicode,i.imageType=t.imageType||"png"):c=new RegExp("<object[^>]*>.*?</object>|<span[^>]*>.*?</span>|<(?:object|embed|svg|img|div|span|p|a)[^>]*>|("+i.unicodeRegexp+")","gi")}))}var F=function(e,i){var a=this;L(i),n[a.id=++t]={},r[a.id]={},o((function(){R(a,e,i)}))};function G(t,n){n=n.replace(/^@/,"");var i=t.id;r[i][n]&&(e.each(r[i][n],(function(r,i){e.each(e.isArray(i[0])?i[0]:[i[0]],(function(r,a){e(a).on(i[1],(function(){var r=f.call(arguments),a=e.isFunction(i[2])?i[2].apply(t,[n].concat(r)):i[2];a&&m(t,n,[a].concat(r))}))}))})),r[i][n]=null)}F.prototype.on=function(t,r){if(t&&e.isFunction(r)){var i=this;e.each(t.toLowerCase().split(" "),(function(e,t){G(i,t),(n[i.id][t]||(n[i.id][t]=[])).push(r)}))}return this},F.prototype.off=function(t,r){if(t){var i=this.id;e.each(t.toLowerCase().replace(/_/g,".").split(" "),(function(t,a){n[i][a]&&!/^@/.test(a)&&(r?e.each(n[i][a],(function(e,t){t===r&&(n[i][a]=n[i][a].splice(e,1))})):n[i][a]=[])}))}return this},F.prototype.trigger=function(){var e=f.call(arguments),t=[this].concat(e.slice(0,1));return t.push(e.slice(1)),m.apply(this,t)},F.prototype.setFocus=function(){var e=this;return o((function(){e.editor.focus()})),e},F.prototype.setText=function(e){var t=this;return o((function(){t.editor.html(k(e,t)),t.content=t.editor.html(),m(t,"change",[t.editor]),D.apply(t)})),t},F.prototype.getText=function(){return E(this.editor.html(),this)},F.prototype.showPicker=function(){var e=this;return e._sh_timer&&window.clearTimeout(e._sh_timer),e.picker.removeClass("hidden"),e._sh_timer=window.setTimeout((function(){e.button.addClass("active")}),50),m(e,"picker.show",[e.picker]),e},F.prototype.hidePicker=function(){var e=this;return e._sh_timer&&window.clearTimeout(e._sh_timer),e.button.removeClass("active"),e._sh_timer=window.setTimeout((function(){e.picker.addClass("hidden")}),500),m(e,"picker.hide",[e.picker]),e},F.prototype.enable=function(){var e=this,t=function(){e.disabled=!1,e.editor.prop("contenteditable",!0),e.button.show();var t=e[e.standalone?"button":"editor"];t.parent().removeClass("emojionearea-disable"),m(e,"enabled",[t])};return e.isReady?t():e.on("ready",t),e},F.prototype.disable=function(){var e=this;e.disabled=!0;var t=function(){e.editor.prop("contenteditable",!1),e.hidePicker(),e.button.hide();var t=e[e.standalone?"button":"editor"];t.parent().addClass("emojionearea-disable"),m(e,"disabled",[t])};return e.isReady?t():e.on("ready",t),e},e.fn.emojioneArea=function(t){return this.each((function(){return this.emojioneArea||e.data(this,"emojioneArea",this.emojioneArea=new F(e(this),t)),this.emojioneArea}))},e.fn.emojioneArea.defaults=S(),e.fn.emojioneAreaText=function(t){t=x(t);var n=this,r={shortnames:!t||void 0===t.shortnames||t.shortnames,emojiTemplate:'<img alt="{alt}" class="emojione'+(t&&t.sprite&&h<3?'-{uni}" src="'+u:'emoji" src="{img}')+'"/>'};return L(t),o((function(){n.each((function(){var t=e(this);return t.hasClass("emojionearea-text")||t.addClass("emojionearea-text").html(k(t.is("TEXTAREA")||t.is("INPUT")?t.val():t.text(),r)),t}))})),this}}),window),function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).JsSIP=e()}}((function(){return function e(t,n,r){function i(o,s){if(!n[o]){if(!t[o]){var l="function"==typeof require&&require;if(!s&&l)return l(o,!0);if(a)return a(o,!0);var c=new Error("Cannot find module '"+o+"'");throw c.code="MODULE_NOT_FOUND",c}var u=n[o]={exports:{}};t[o][0].call(u.exports,(function(e){var n=t[o][1][e];return i(n||e)}),u,u.exports,e,t,n,r)}return n[o].exports}for(var a="function"==typeof require&&require,o=0;o<r.length;o++)i(r[o]);return i}({1:[function(e,t,n){"use strict";var r=e("./Utils"),i=e("./Constants"),a=e("./Grammar"),o=e("./URI"),s=e("./Socket"),l=e("./Exceptions");n.settings={authorization_user:null,password:null,realm:null,ha1:null,display_name:null,uri:null,contact_uri:null,instance_id:null,use_preloaded_route:!1,session_timers:!0,session_timers_refresh_method:i.UPDATE,no_answer_timeout:60,register:!0,register_expires:600,registrar_server:null,sockets:null,connection_recovery_max_interval:null,connection_recovery_min_interval:null,via_host:r.createRandomToken(12)+".invalid"};var c={mandatory:{sockets:function(e){var t=[];if(s.isSocket(e))t.push({socket:e});else{if(!Array.isArray(e)||!e.length)return;var n=!0,r=!1,i=void 0;try{for(var a,o=e[Symbol.iterator]();!(n=(a=o.next()).done);n=!0){var l=a.value;Object.prototype.hasOwnProperty.call(l,"socket")&&s.isSocket(l.socket)?t.push(l):s.isSocket(l)&&t.push({socket:l})}}catch(e){r=!0,i=e}finally{try{!n&&o.return&&o.return()}finally{if(r)throw i}}}return t},uri:function(e){/^sip:/i.test(e)||(e=i.SIP+":"+e);var t=o.parse(e);return t&&t.user?t:void 0}},optional:{authorization_user:function(e){return-1===a.parse('"'+e+'"',"quoted_string")?void 0:e},user_agent:function(e){if("string"==typeof e)return e},connection_recovery_max_interval:function(e){if(r.isDecimal(e)){var t=Number(e);if(t>0)return t}},connection_recovery_min_interval:function(e){if(r.isDecimal(e)){var t=Number(e);if(t>0)return t}},contact_uri:function(e){if("string"==typeof e){var t=a.parse(e,"SIP_URI");if(-1!==t)return t}},display_name:function(e){return-1===a.parse('"'+e+'"',"display_name")?void 0:e},instance_id:function(e){return/^uuid:/i.test(e)&&(e=e.substr(5)),-1===a.parse(e,"uuid")?void 0:e},no_answer_timeout:function(e){if(r.isDecimal(e)){var t=Number(e);if(t>0)return t}},session_timers:function(e){if("boolean"==typeof e)return e},session_timers_refresh_method:function(e){if("string"==typeof e&&((e=e.toUpperCase())===i.INVITE||e===i.UPDATE))return e},password:function(e){return String(e)},realm:function(e){return String(e)},ha1:function(e){return String(e)},register:function(e){if("boolean"==typeof e)return e},register_expires:function(e){if(r.isDecimal(e)){var t=Number(e);if(t>0)return t}},registrar_server:function(e){/^sip:/i.test(e)||(e=i.SIP+":"+e);var t=o.parse(e);return t?t.user?void 0:t:void 0},use_preloaded_route:function(e){if("boolean"==typeof e)return e}}};n.load=function(e,t){for(var n in c.mandatory){if(!t.hasOwnProperty(n))throw new l.ConfigurationError(n);var i=t[n],a=c.mandatory[n](i);if(void 0===a)throw new l.ConfigurationError(n,i);e[n]=a}for(var o in c.optional)if(t.hasOwnProperty(o)){var s=t[o];if(r.isEmpty(s))continue;var u=c.optional[o](s);if(void 0===u)throw new l.ConfigurationError(o,s);e[o]=u}}},{"./Constants":2,"./Exceptions":6,"./Grammar":7,"./Socket":20,"./URI":25,"./Utils":26}],2:[function(e,t,n){"use strict";var r=e("../package.json");t.exports={USER_AGENT:r.title+" "+r.version,SIP:"sip",SIPS:"sips",causes:{CONNECTION_ERROR:"Connection Error",REQUEST_TIMEOUT:"Request Timeout",SIP_FAILURE_CODE:"SIP Failure Code",INTERNAL_ERROR:"Internal Error",BUSY:"Busy",REJECTED:"Rejected",REDIRECTED:"Redirected",UNAVAILABLE:"Unavailable",NOT_FOUND:"Not Found",ADDRESS_INCOMPLETE:"Address Incomplete",INCOMPATIBLE_SDP:"Incompatible SDP",MISSING_SDP:"Missing SDP",AUTHENTICATION_ERROR:"Authentication Error",BYE:"Terminated",WEBRTC_ERROR:"WebRTC Error",CANCELED:"Canceled",NO_ANSWER:"No Answer",EXPIRES:"Expires",NO_ACK:"No ACK",DIALOG_ERROR:"Dialog Error",USER_DENIED_MEDIA_ACCESS:"User Denied Media Access",BAD_MEDIA_DESCRIPTION:"Bad Media Description",RTP_TIMEOUT:"RTP Timeout"},SIP_ERROR_CAUSES:{REDIRECTED:[300,301,302,305,380],BUSY:[486,600],REJECTED:[403,603],NOT_FOUND:[404,604],UNAVAILABLE:[480,410,408,430],ADDRESS_INCOMPLETE:[484,424],INCOMPATIBLE_SDP:[488,606],AUTHENTICATION_ERROR:[401,407]},ACK:"ACK",BYE:"BYE",CANCEL:"CANCEL",INFO:"INFO",INVITE:"INVITE",MESSAGE:"MESSAGE",NOTIFY:"NOTIFY",OPTIONS:"OPTIONS",REGISTER:"REGISTER",REFER:"REFER",UPDATE:"UPDATE",SUBSCRIBE:"SUBSCRIBE",REASON_PHRASE:{100:"Trying",180:"Ringing",181:"Call Is Being Forwarded",182:"Queued",183:"Session Progress",199:"Early Dialog Terminated",200:"OK",202:"Accepted",204:"No Notification",300:"Multiple Choices",301:"Moved Permanently",302:"Moved Temporarily",305:"Use Proxy",380:"Alternative Service",400:"Bad Request",401:"Unauthorized",402:"Payment Required",403:"Forbidden",404:"Not Found",405:"Method Not Allowed",406:"Not Acceptable",407:"Proxy Authentication Required",408:"Request Timeout",410:"Gone",412:"Conditional Request Failed",413:"Request Entity Too Large",414:"Request-URI Too Long",415:"Unsupported Media Type",416:"Unsupported URI Scheme",417:"Unknown Resource-Priority",420:"Bad Extension",421:"Extension Required",422:"Session Interval Too Small",423:"Interval Too Brief",424:"Bad Location Information",428:"Use Identity Header",429:"Provide Referrer Identity",430:"Flow Failed",433:"Anonymity Disallowed",436:"Bad Identity-Info",437:"Unsupported Certificate",438:"Invalid Identity Header",439:"First Hop Lacks Outbound Support",440:"Max-Breadth Exceeded",469:"Bad Info Package",470:"Consent Needed",478:"Unresolvable Destination",480:"Temporarily Unavailable",481:"Call/Transaction Does Not Exist",482:"Loop Detected",483:"Too Many Hops",484:"Address Incomplete",485:"Ambiguous",486:"Busy Here",487:"Request Terminated",488:"Not Acceptable Here",489:"Bad Event",491:"Request Pending",493:"Undecipherable",494:"Security Agreement Required",500:"JsSIP Internal Error",501:"Not Implemented",502:"Bad Gateway",503:"Service Unavailable",504:"Server Time-out",505:"Version Not Supported",513:"Message Too Large",580:"Precondition Failure",600:"Busy Everywhere",603:"Decline",604:"Does Not Exist Anywhere",606:"Not Acceptable"},ALLOWED_METHODS:"INVITE,ACK,CANCEL,BYE,UPDATE,MESSAGE,OPTIONS,REFER,INFO",ACCEPTED_BODY_TYPES:"application/sdp, application/dtmf-relay",MAX_FORWARDS:69,SESSION_EXPIRES:90,MIN_SESSION_EXPIRES:60}},{"../package.json":51}],3:[function(e,t,n){"use strict";var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}();function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var a=e("./SIPMessage"),o=e("./Constants"),s=e("./Transactions"),l=e("./Dialog/RequestSender"),c=e("./Utils"),u=e("debug")("JsSIP:Dialog"),f={STATUS_EARLY:1,STATUS_CONFIRMED:2};t.exports=function(){function e(t,n,r){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:f.STATUS_CONFIRMED;if(i(this,e),this._owner=t,this._ua=t._ua,this._uac_pending_reply=!1,this._uas_pending_reply=!1,!n.hasHeader("contact"))return{error:"unable to create a Dialog without Contact header field"};n instanceof a.IncomingResponse&&(o=n.status_code<200?f.STATUS_EARLY:f.STATUS_CONFIRMED);var s=n.parseHeader("contact");"UAS"===r?(this._id={call_id:n.call_id,local_tag:n.to_tag,remote_tag:n.from_tag,toString:function(){return this.call_id+this.local_tag+this.remote_tag}},this._state=o,this._remote_seqnum=n.cseq,this._local_uri=n.parseHeader("to").uri,this._remote_uri=n.parseHeader("from").uri,this._remote_target=s.uri,this._route_set=n.getHeaders("record-route"),this._ack_seqnum=this._remote_seqnum):"UAC"===r&&(this._id={call_id:n.call_id,local_tag:n.from_tag,remote_tag:n.to_tag,toString:function(){return this.call_id+this.local_tag+this.remote_tag}},this._state=o,this._local_seqnum=n.cseq,this._local_uri=n.parseHeader("from").uri,this._remote_uri=n.parseHeader("to").uri,this._remote_target=s.uri,this._route_set=n.getHeaders("record-route").reverse(),this._ack_seqnum=null),this._ua.newDialog(this),u("new "+r+" dialog created with status "+(this._state===f.STATUS_EARLY?"EARLY":"CONFIRMED"))}return r(e,null,[{key:"C",get:function(){return f}}]),r(e,[{key:"update",value:function(e,t){this._state=f.STATUS_CONFIRMED,u("dialog "+this._id.toString()+"  changed to CONFIRMED state"),"UAC"===t&&(this._route_set=e.getHeaders("record-route").reverse())}},{key:"terminate",value:function(){u("dialog "+this._id.toString()+" deleted"),this._ua.destroyDialog(this)}},{key:"sendRequest",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=c.cloneArray(n.extraHeaders),i=n.eventHandlers||{},a=n.body||null,o=this._createRequest(e,r,a);i.onAuthenticated=function(){t._local_seqnum+=1};var s=new l(this,o,i);return s.send(),o}},{key:"receiveRequest",value:function(e){this._checkInDialogRequest(e)&&(e.method===o.ACK&&null!==this._ack_seqnum?this._ack_seqnum=null:e.method===o.INVITE&&(this._ack_seqnum=e.cseq),this._owner.receiveRequest(e))}},{key:"_createRequest",value:function(e,t,n){t=c.cloneArray(t),this._local_seqnum||(this._local_seqnum=Math.floor(1e4*Math.random()));var r=e===o.CANCEL||e===o.ACK?this._local_seqnum:this._local_seqnum+=1;return new a.OutgoingRequest(e,this._remote_target,this._ua,{cseq:r,call_id:this._id.call_id,from_uri:this._local_uri,from_tag:this._id.local_tag,to_uri:this._remote_uri,to_tag:this._id.remote_tag,route_set:this._route_set},t,n)}},{key:"_checkInDialogRequest",value:function(e){var t=this;if(this._remote_seqnum)if(e.cseq<this._remote_seqnum){if(e.method!==o.ACK)return e.reply(500),!1;if(null===this._ack_seqnum||e.cseq!==this._ack_seqnum)return!1}else e.cseq>this._remote_seqnum&&(this._remote_seqnum=e.cseq);else this._remote_seqnum=e.cseq;if(e.method===o.INVITE||e.method===o.UPDATE&&e.body){if(!0===this._uac_pending_reply)e.reply(491);else{if(!0===this._uas_pending_reply){var n=1+(10*Math.random()|0);return e.reply(500,null,["Retry-After:"+n]),!1}this._uas_pending_reply=!0;e.server_transaction.on("stateChanged",(function n(){e.server_transaction.state!==s.C.STATUS_ACCEPTED&&e.server_transaction.state!==s.C.STATUS_COMPLETED&&e.server_transaction.state!==s.C.STATUS_TERMINATED||(e.server_transaction.removeListener("stateChanged",n),t._uas_pending_reply=!1)}))}e.hasHeader("contact")&&e.server_transaction.on("stateChanged",(function(){e.server_transaction.state===s.C.STATUS_ACCEPTED&&(t._remote_target=e.parseHeader("contact").uri)}))}else e.method===o.NOTIFY&&e.hasHeader("contact")&&e.server_transaction.on("stateChanged",(function(){e.server_transaction.state===s.C.STATUS_COMPLETED&&(t._remote_target=e.parseHeader("contact").uri)}));return!0}},{key:"id",get:function(){return this._id}},{key:"local_seqnum",get:function(){return this._local_seqnum},set:function(e){this._local_seqnum=e}},{key:"owner",get:function(){return this._owner}},{key:"uac_pending_reply",get:function(){return this._uac_pending_reply},set:function(e){this._uac_pending_reply=e}},{key:"uas_pending_reply",get:function(){return this._uas_pending_reply}}]),e}()},{"./Constants":2,"./Dialog/RequestSender":4,"./SIPMessage":19,"./Transactions":22,"./Utils":26,debug:29}],4:[function(e,t,n){"use strict";var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}();var i=e("../Constants"),a=e("../Transactions"),o=e("../RTCSession"),s=e("../RequestSender"),l={onRequestTimeout:function(){},onTransportError:function(){},onSuccessResponse:function(){},onErrorResponse:function(){},onAuthenticated:function(){},onDialogError:function(){}};t.exports=function(){function e(t,n,r){for(var i in function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this._dialog=t,this._ua=t._ua,this._request=n,this._eventHandlers=r,this._reattempt=!1,this._reattemptTimer=null,l)Object.prototype.hasOwnProperty.call(l,i)&&(this._eventHandlers[i]||(this._eventHandlers[i]=l[i]))}return r(e,[{key:"send",value:function(){var e=this,t=new s(this._ua,this._request,{onRequestTimeout:function(){e._eventHandlers.onRequestTimeout()},onTransportError:function(){e._eventHandlers.onTransportError()},onAuthenticated:function(t){e._eventHandlers.onAuthenticated(t)},onReceiveResponse:function(t){e._receiveResponse(t)}});if(t.send(),(this._request.method===i.INVITE||this._request.method===i.UPDATE&&this._request.body)&&t.clientTransaction.state!==a.C.STATUS_TERMINATED){this._dialog.uac_pending_reply=!0;t.clientTransaction.on("stateChanged",(function n(){t.clientTransaction.state!==a.C.STATUS_ACCEPTED&&t.clientTransaction.state!==a.C.STATUS_COMPLETED&&t.clientTransaction.state!==a.C.STATUS_TERMINATED||(t.clientTransaction.removeListener("stateChanged",n),e._dialog.uac_pending_reply=!1)}))}}},{key:"_receiveResponse",value:function(e){var t=this;408===e.status_code||481===e.status_code?this._eventHandlers.onDialogError(e):e.method===i.INVITE&&491===e.status_code?this._reattempt?e.status_code>=200&&e.status_code<300?this._eventHandlers.onSuccessResponse(e):e.status_code>=300&&this._eventHandlers.onErrorResponse(e):(this._request.cseq.value=this._dialog.local_seqnum+=1,this._reattemptTimer=setTimeout((function(){t._dialog.owner.status!==o.C.STATUS_TERMINATED&&(t._reattempt=!0,t._request_sender.send())}),1e3)):e.status_code>=200&&e.status_code<300?this._eventHandlers.onSuccessResponse(e):e.status_code>=300&&this._eventHandlers.onErrorResponse(e)}},{key:"request",get:function(){return this._request}}]),e}()},{"../Constants":2,"../RTCSession":12,"../RequestSender":18,"../Transactions":22}],5:[function(e,t,n){"use strict";var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}();var i=e("./Utils"),a=e("debug")("JsSIP:DigestAuthentication"),o=e("debug")("JsSIP:ERROR:DigestAuthentication");o.log=console.warn.bind(console),t.exports=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this._credentials=t,this._cnonce=null,this._nc=0,this._ncHex="00000000",this._algorithm=null,this._realm=null,this._nonce=null,this._opaque=null,this._stale=null,this._qop=null,this._method=null,this._uri=null,this._ha1=null,this._response=null}return r(e,[{key:"get",value:function(e){switch(e){case"realm":return this._realm;case"ha1":return this._ha1;default:return void o('get() | cannot get "%s" parameter',e)}}},{key:"authenticate",value:function(e,t){var n=e.method,r=e.ruri,s=e.body,l=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;if(this._algorithm=t.algorithm,this._realm=t.realm,this._nonce=t.nonce,this._opaque=t.opaque,this._stale=t.stale,this._algorithm){if("MD5"!==this._algorithm)return o('authenticate() | challenge with Digest algorithm different than "MD5", authentication aborted'),!1}else this._algorithm="MD5";if(!this._nonce)return o("authenticate() | challenge without Digest nonce, authentication aborted"),!1;if(!this._realm)return o("authenticate() | challenge without Digest realm, authentication aborted"),!1;if(!this._credentials.password){if(!this._credentials.ha1)return o("authenticate() | no plain SIP password nor ha1 provided, authentication aborted"),!1;if(this._credentials.realm!==this._realm)return o('authenticate() | no plain SIP password, and stored `realm` does not match the given `realm`, cannot authenticate [stored:"%s", given:"%s"]',this._credentials.realm,this._realm),!1}if(t.qop)if(t.qop.indexOf("auth-int")>-1)this._qop="auth-int";else{if(!(t.qop.indexOf("auth")>-1))return o('authenticate() | challenge without Digest qop different than "auth" or "auth-int", authentication aborted'),!1;this._qop="auth"}else this._qop=null;this._method=n,this._uri=r,this._cnonce=l||i.createRandomToken(12),this._nc+=1;var c=Number(this._nc).toString(16);this._ncHex="00000000".substr(0,8-c.length)+c,4294967296===this._nc&&(this._nc=1,this._ncHex="00000001"),this._credentials.password?this._ha1=i.calculateMD5(this._credentials.username+":"+this._realm+":"+this._credentials.password):this._ha1=this._credentials.ha1;var u=void 0;return"auth"===this._qop?(u=i.calculateMD5(this._method+":"+this._uri),this._response=i.calculateMD5(this._ha1+":"+this._nonce+":"+this._ncHex+":"+this._cnonce+":auth:"+u)):"auth-int"===this._qop?(u=i.calculateMD5(this._method+":"+this._uri+":"+i.calculateMD5(s||"")),this._response=i.calculateMD5(this._ha1+":"+this._nonce+":"+this._ncHex+":"+this._cnonce+":auth-int:"+u)):null===this._qop&&(u=i.calculateMD5(this._method+":"+this._uri),this._response=i.calculateMD5(this._ha1+":"+this._nonce+":"+u)),a("authenticate() | response generated"),!0}},{key:"toString",value:function(){var e=[];if(!this._response)throw new Error("response field does not exist, cannot generate Authorization header");return e.push("algorithm="+this._algorithm),e.push('username="'+this._credentials.username+'"'),e.push('realm="'+this._realm+'"'),e.push('nonce="'+this._nonce+'"'),e.push('uri="'+this._uri+'"'),e.push('response="'+this._response+'"'),this._opaque&&e.push('opaque="'+this._opaque+'"'),this._qop&&(e.push("qop="+this._qop),e.push('cnonce="'+this._cnonce+'"'),e.push("nc="+this._ncHex)),"Digest "+e.join(", ")}}]),e}()},{"./Utils":26,debug:29}],6:[function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var o=function(e){function t(e,n){r(this,t);var a=i(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return a.code=1,a.name="CONFIGURATION_ERROR",a.parameter=e,a.value=n,a.message=a.value?"Invalid value "+JSON.stringify(a.value)+' for parameter "'+a.parameter+'"':"Missing parameter: "+a.parameter,a}return a(t,Error),t}(),s=function(e){function t(e){r(this,t);var n=i(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return n.code=2,n.name="INVALID_STATE_ERROR",n.status=e,n.message="Invalid status: "+e,n}return a(t,Error),t}(),l=function(e){function t(e){r(this,t);var n=i(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return n.code=3,n.name="NOT_SUPPORTED_ERROR",n.message=e,n}return a(t,Error),t}(),c=function(e){function t(e){r(this,t);var n=i(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return n.code=4,n.name="NOT_READY_ERROR",n.message=e,n}return a(t,Error),t}();t.exports={ConfigurationError:o,InvalidStateError:s,NotSupportedError:l,NotReadyError:c}},{}],7:[function(e,t,n){"use strict";t.exports=function(){function t(e){return'"'+e.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var n={parse:function(n,r){var i={CRLF:c,DIGIT:u,ALPHA:f,HEXDIG:d,WSP:h,OCTET:p,DQUOTE:m,SP:g,HTAB:_,alphanum:b,reserved:v,unreserved:y,mark:w,escaped:C,LWS:A,SWS:S,HCOLON:x,TEXT_UTF8_TRIM:T,TEXT_UTF8char:k,UTF8_NONASCII:E,UTF8_CONT:D,LHEX:function(){var e;null===(e=u())&&(/^[a-f]/.test(n.charAt(a))?(e=n.charAt(a),a++):(e=null,l("[a-f]")));return e},token:I,token_nodot:P,separators:function(){var e;40===n.charCodeAt(a)?(e="(",a++):(e=null,l('"("'));null===e&&(41===n.charCodeAt(a)?(e=")",a++):(e=null,l('")"')),null===e&&(60===n.charCodeAt(a)?(e="<",a++):(e=null,l('"<"')),null===e&&(62===n.charCodeAt(a)?(e=">",a++):(e=null,l('">"')),null===e&&(64===n.charCodeAt(a)?(e="@",a++):(e=null,l('"@"')),null===e&&(44===n.charCodeAt(a)?(e=",",a++):(e=null,l('","')),null===e&&(59===n.charCodeAt(a)?(e=";",a++):(e=null,l('";"')),null===e&&(58===n.charCodeAt(a)?(e=":",a++):(e=null,l('":"')),null===e&&(92===n.charCodeAt(a)?(e="\\",a++):(e=null,l('"\\\\"')),null===e&&null===(e=m())&&(47===n.charCodeAt(a)?(e="/",a++):(e=null,l('"/"')),null===e&&(91===n.charCodeAt(a)?(e="[",a++):(e=null,l('"["')),null===e&&(93===n.charCodeAt(a)?(e="]",a++):(e=null,l('"]"')),null===e&&(63===n.charCodeAt(a)?(e="?",a++):(e=null,l('"?"')),null===e&&(61===n.charCodeAt(a)?(e="=",a++):(e=null,l('"="')),null===e&&(123===n.charCodeAt(a)?(e="{",a++):(e=null,l('"{"')),null===e&&(125===n.charCodeAt(a)?(e="}",a++):(e=null,l('"}"')),null===e&&null===(e=g())&&(e=_()))))))))))))))));return e},word:M,STAR:$,SLASH:O,EQUAL:R,LPAREN:N,RPAREN:L,RAQUOT:F,LAQUOT:G,COMMA:j,SEMI:B,COLON:U,LDQUOT:H,RDQUOT:W,comment:function e(){var t,n,r,i;if(i=a,null!==(t=N())){for(n=[],null===(r=q())&&null===(r=K())&&(r=e());null!==r;)n.push(r),null===(r=q())&&null===(r=K())&&(r=e());null!==n&&null!==(r=L())?t=[t,n,r]:(t=null,a=i)}else t=null,a=i;return t},ctext:q,quoted_string:z,quoted_string_clean:V,qdtext:Y,quoted_pair:K,SIP_URI_noparams:Q,SIP_URI:X,uri_scheme:Z,uri_scheme_sips:J,uri_scheme_sip:ee,userinfo:te,user:ne,user_unreserved:re,password:ie,hostport:ae,host:oe,hostname:se,domainlabel:le,toplabel:ce,IPv6reference:ue,IPv6address:fe,h16:de,ls32:he,IPv4address:pe,dec_octet:me,port:ge,uri_parameters:_e,uri_parameter:be,transport_param:ve,user_param:ye,method_param:we,ttl_param:Ce,maddr_param:Ae,lr_param:Se,other_param:xe,pname:Te,pvalue:ke,paramchar:Ee,param_unreserved:De,headers:Ie,header:Pe,hname:Me,hvalue:$e,hnv_unreserved:Oe,Request_Response:function(){var e;null===(e=ut())&&(e=Re());return e},Request_Line:Re,Request_URI:Ne,absoluteURI:Le,hier_part:Fe,net_path:Ge,abs_path:je,opaque_part:Be,uric:Ue,uric_no_slash:He,path_segments:We,segment:qe,param:ze,pchar:Ve,scheme:Ye,authority:Ke,srvr:Qe,reg_name:Xe,query:Ze,SIP_Version:Je,INVITEm:et,ACKm:tt,OPTIONSm:nt,BYEm:rt,CANCELm:it,REGISTERm:at,SUBSCRIBEm:ot,NOTIFYm:st,REFERm:lt,Method:ct,Status_Line:ut,Status_Code:ft,extension_code:dt,Reason_Phrase:ht,Allow_Events:function(){var e,t,n,r,i,o;if(i=a,null!==(e=Lt())){for(t=[],o=a,null!==(n=j())&&null!==(r=Lt())?n=[n,r]:(n=null,a=o);null!==n;)t.push(n),o=a,null!==(n=j())&&null!==(r=Lt())?n=[n,r]:(n=null,a=o);null!==t?e=[e,t]:(e=null,a=i)}else e=null,a=i;return e},Call_ID:function(){var e,t,r,i,o,s;i=a,o=a,null!==(e=M())?(s=a,64===n.charCodeAt(a)?(t="@",a++):(t=null,l('"@"')),null!==t&&null!==(r=M())?t=[t,r]:(t=null,a=s),null!==(t=null!==t?t:"")?e=[e,t]:(e=null,a=o)):(e=null,a=o);null!==e&&(e=function(e){Gn=n.substring(a,e)}(i));null===e&&(a=i);return e},Contact:function(){var e,t,n,r,i,o,s;if(i=a,null===(e=$()))if(o=a,null!==(e=pt())){for(t=[],s=a,null!==(n=j())&&null!==(r=pt())?n=[n,r]:(n=null,a=s);null!==n;)t.push(n),s=a,null!==(n=j())&&null!==(r=pt())?n=[n,r]:(n=null,a=s);null!==t?e=[e,t]:(e=null,a=o)}else e=null,a=o;null!==e&&(e=function(e){var t,n;for(n=Gn.multi_header.length,t=0;t<n;t++)if(null===Gn.multi_header[t].parsed){Gn=null;break}Gn=null!==Gn?Gn.multi_header:-1}());null===e&&(a=i);return e},contact_param:pt,name_addr:mt,display_name:gt,contact_params:_t,c_p_q:bt,c_p_expires:vt,delta_seconds:yt,qvalue:wt,generic_param:Ct,gen_value:At,Content_Disposition:function(){var e,t,n,r,i,o;if(i=a,null!==(e=St())){for(t=[],o=a,null!==(n=B())&&null!==(r=xt())?n=[n,r]:(n=null,a=o);null!==n;)t.push(n),o=a,null!==(n=B())&&null!==(r=xt())?n=[n,r]:(n=null,a=o);null!==t?e=[e,t]:(e=null,a=i)}else e=null,a=i;return e},disp_type:St,disp_param:xt,handling_param:Tt,Content_Encoding:function(){var e,t,n,r,i,o;if(i=a,null!==(e=I())){for(t=[],o=a,null!==(n=j())&&null!==(r=I())?n=[n,r]:(n=null,a=o);null!==n;)t.push(n),o=a,null!==(n=j())&&null!==(r=I())?n=[n,r]:(n=null,a=o);null!==t?e=[e,t]:(e=null,a=i)}else e=null,a=i;return e},Content_Length:function(){var e,t,n;if(n=a,null!==(t=u()))for(e=[];null!==t;)e.push(t),t=u();else e=null;null!==e&&(e=void(Gn=parseInt(e.join(""))));null===e&&(a=n);return e},Content_Type:function(){var e,t;t=a,null!==(e=kt())&&(e=function(e){Gn=n.substring(a,e)}(t));null===e&&(a=t);return e},media_type:kt,m_type:Et,discrete_type:Dt,composite_type:It,extension_token:Pt,x_token:Mt,m_subtype:$t,m_parameter:Ot,m_value:Rt,CSeq:function(){var e,t,n,r;r=a,null!==(e=Nt())&&null!==(t=A())&&null!==(n=ct())?e=[e,t,n]:(e=null,a=r);return e},CSeq_value:Nt,Expires:function(){var e,t;t=a,null!==(e=yt())&&(e=void(Gn=e));null===e&&(a=t);return e},Event:function(){var e,t,n,r,i,o,s;if(i=a,o=a,null!==(e=Lt())){for(t=[],s=a,null!==(n=B())&&null!==(r=Ct())?n=[n,r]:(n=null,a=s);null!==n;)t.push(n),s=a,null!==(n=B())&&null!==(r=Ct())?n=[n,r]:(n=null,a=s);null!==t?e=[e,t]:(e=null,a=o)}else e=null,a=o;null!==e&&(l=e[0],e=void(Gn.event=l.join("").toLowerCase()));var l;null===e&&(a=i);return e},event_type:Lt,From:function(){var e,t,n,r,i,o,s;i=a,o=a,null===(e=Q())&&(e=mt());if(null!==e){for(t=[],s=a,null!==(n=B())&&null!==(r=Ft())?n=[n,r]:(n=null,a=s);null!==n;)t.push(n),s=a,null!==(n=B())&&null!==(r=Ft())?n=[n,r]:(n=null,a=s);null!==t?e=[e,t]:(e=null,a=o)}else e=null,a=o;null!==e&&(e=function(e){var t=Gn.tag;try{Gn=new Fn(Gn.uri,Gn.display_name,Gn.params),t&&Gn.setParam("tag",t)}catch(e){Gn=-1}}());null===e&&(a=i);return e},from_param:Ft,tag_param:Gt,Max_Forwards:function(){var e,t,n;if(n=a,null!==(t=u()))for(e=[];null!==t;)e.push(t),t=u();else e=null;null!==e&&(e=void(Gn=parseInt(e.join(""))));null===e&&(a=n);return e},Min_Expires:function(){var e,t;t=a,null!==(e=yt())&&(e=void(Gn=e));null===e&&(a=t);return e},Name_Addr_Header:function(){var e,t,n,r,i,o,s,l,c,u;l=a,c=a,e=[],t=gt();for(;null!==t;)e.push(t),t=gt();if(null!==e)if(null!==(t=G()))if(null!==(n=X()))if(null!==(r=F())){for(i=[],u=a,null!==(o=B())&&null!==(s=Ct())?o=[o,s]:(o=null,a=u);null!==o;)i.push(o),u=a,null!==(o=B())&&null!==(s=Ct())?o=[o,s]:(o=null,a=u);null!==i?e=[e,t,n,r,i]:(e=null,a=c)}else e=null,a=c;else e=null,a=c;else e=null,a=c;else e=null,a=c;null!==e&&(e=function(e){try{Gn=new Fn(Gn.uri,Gn.display_name,Gn.params)}catch(e){Gn=-1}}());null===e&&(a=l);return e},Proxy_Authenticate:function(){return jt()},challenge:jt,other_challenge:Bt,auth_param:Ut,digest_cln:Ht,realm:Wt,realm_value:qt,domain:zt,URI:Vt,nonce:Yt,nonce_value:Kt,opaque:Qt,stale:Xt,algorithm:Zt,qop_options:Jt,qop_value:en,Proxy_Require:function(){var e,t,n,r,i,o;if(i=a,null!==(e=I())){for(t=[],o=a,null!==(n=j())&&null!==(r=I())?n=[n,r]:(n=null,a=o);null!==n;)t.push(n),o=a,null!==(n=j())&&null!==(r=I())?n=[n,r]:(n=null,a=o);null!==t?e=[e,t]:(e=null,a=i)}else e=null,a=i;return e},Record_Route:function(){var e,t,n,r,i,o,s;if(i=a,o=a,null!==(e=tn())){for(t=[],s=a,null!==(n=j())&&null!==(r=tn())?n=[n,r]:(n=null,a=s);null!==n;)t.push(n),s=a,null!==(n=j())&&null!==(r=tn())?n=[n,r]:(n=null,a=s);null!==t?e=[e,t]:(e=null,a=o)}else e=null,a=o;null!==e&&(e=function(e){var t,n;for(n=Gn.multi_header.length,t=0;t<n;t++)if(null===Gn.multi_header[t].parsed){Gn=null;break}Gn=null!==Gn?Gn.multi_header:-1}());null===e&&(a=i);return e},rec_route:tn,Reason:function(){var e,t,r,i,o,s,c;o=a,s=a,"sip"===n.substr(a,3).toLowerCase()?(e=n.substr(a,3),a+=3):(e=null,l('"SIP"'));null===e&&(e=I());if(null!==e){for(t=[],c=a,null!==(r=B())&&null!==(i=nn())?r=[r,i]:(r=null,a=c);null!==r;)t.push(r),c=a,null!==(r=B())&&null!==(i=nn())?r=[r,i]:(r=null,a=c);null!==t?e=[e,t]:(e=null,a=s)}else e=null,a=s;null!==e&&(e=function(e,t){if(Gn.protocol=t.toLowerCase(),Gn.params||(Gn.params={}),Gn.params.text&&'"'===Gn.params.text[0]){var n=Gn.params.text;Gn.text=n.substring(1,n.length-1),delete Gn.params.text}}(0,e[0]));null===e&&(a=o);return e},reason_param:nn,reason_cause:rn,Require:function(){var e,t,n,r,i,o;if(i=a,null!==(e=I())){for(t=[],o=a,null!==(n=j())&&null!==(r=I())?n=[n,r]:(n=null,a=o);null!==n;)t.push(n),o=a,null!==(n=j())&&null!==(r=I())?n=[n,r]:(n=null,a=o);null!==t?e=[e,t]:(e=null,a=i)}else e=null,a=i;return e},Route:function(){var e,t,n,r,i,o;if(i=a,null!==(e=an())){for(t=[],o=a,null!==(n=j())&&null!==(r=an())?n=[n,r]:(n=null,a=o);null!==n;)t.push(n),o=a,null!==(n=j())&&null!==(r=an())?n=[n,r]:(n=null,a=o);null!==t?e=[e,t]:(e=null,a=i)}else e=null,a=i;return e},route_param:an,Subscription_State:function(){var e,t,n,r,i,o;if(i=a,null!==(e=on())){for(t=[],o=a,null!==(n=B())&&null!==(r=sn())?n=[n,r]:(n=null,a=o);null!==n;)t.push(n),o=a,null!==(n=B())&&null!==(r=sn())?n=[n,r]:(n=null,a=o);null!==t?e=[e,t]:(e=null,a=i)}else e=null,a=i;return e},substate_value:on,subexp_params:sn,event_reason_value:ln,Subject:function(){var e;return e=null!==(e=T())?e:""},Supported:function(){var e,t,n,r,i,o;if(i=a,null!==(e=I())){for(t=[],o=a,null!==(n=j())&&null!==(r=I())?n=[n,r]:(n=null,a=o);null!==n;)t.push(n),o=a,null!==(n=j())&&null!==(r=I())?n=[n,r]:(n=null,a=o);null!==t?e=[e,t]:(e=null,a=i)}else e=null,a=i;return e=null!==e?e:""},To:function(){var e,t,n,r,i,o,s;i=a,o=a,null===(e=Q())&&(e=mt());if(null!==e){for(t=[],s=a,null!==(n=B())&&null!==(r=cn())?n=[n,r]:(n=null,a=s);null!==n;)t.push(n),s=a,null!==(n=B())&&null!==(r=cn())?n=[n,r]:(n=null,a=s);null!==t?e=[e,t]:(e=null,a=o)}else e=null,a=o;null!==e&&(e=function(e){var t=Gn.tag;try{Gn=new Fn(Gn.uri,Gn.display_name,Gn.params),t&&Gn.setParam("tag",t)}catch(e){Gn=-1}}());null===e&&(a=i);return e},to_param:cn,Via:function(){var e,t,n,r,i,o;if(i=a,null!==(e=un())){for(t=[],o=a,null!==(n=j())&&null!==(r=un())?n=[n,r]:(n=null,a=o);null!==n;)t.push(n),o=a,null!==(n=j())&&null!==(r=un())?n=[n,r]:(n=null,a=o);null!==t?e=[e,t]:(e=null,a=i)}else e=null,a=i;return e},via_param:un,via_params:fn,via_ttl:dn,via_maddr:hn,via_received:pn,via_branch:mn,response_port:gn,sent_protocol:_n,protocol_name:bn,transport:vn,sent_by:yn,via_host:wn,via_port:Cn,ttl:An,WWW_Authenticate:function(){return jt()},Session_Expires:function(){var e,t,n,r,i,o;if(i=a,null!==(e=Sn())){for(t=[],o=a,null!==(n=B())&&null!==(r=xn())?n=[n,r]:(n=null,a=o);null!==n;)t.push(n),o=a,null!==(n=B())&&null!==(r=xn())?n=[n,r]:(n=null,a=o);null!==t?e=[e,t]:(e=null,a=i)}else e=null,a=i;return e},s_e_expires:Sn,s_e_params:xn,s_e_refresher:Tn,extension_header:function(){var e,t,n,r;r=a,null!==(e=I())&&null!==(t=x())&&null!==(n=kn())?e=[e,t,n]:(e=null,a=r);return e},header_value:kn,message_body:function(){var e,t;e=[],t=p();for(;null!==t;)e.push(t),t=p();return e},uuid_URI:function(){var e,t,r;r=a,"uuid:"===n.substr(a,5)?(e="uuid:",a+=5):(e=null,l('"uuid:"'));null!==e&&null!==(t=En())?e=[e,t]:(e=null,a=r);return e},uuid:En,hex4:Dn,hex8:In,hex12:Pn,Refer_To:function(){var e,t,n,r,i,o,s;i=a,o=a,null===(e=Q())&&(e=mt());if(null!==e){for(t=[],s=a,null!==(n=B())&&null!==(r=Ct())?n=[n,r]:(n=null,a=s);null!==n;)t.push(n),s=a,null!==(n=B())&&null!==(r=Ct())?n=[n,r]:(n=null,a=s);null!==t?e=[e,t]:(e=null,a=o)}else e=null,a=o;null!==e&&(e=function(e){try{Gn=new Fn(Gn.uri,Gn.display_name,Gn.params)}catch(e){Gn=-1}}());null===e&&(a=i);return e},Replaces:function(){var e,t,n,r,i,o;if(i=a,null!==(e=Mn())){for(t=[],o=a,null!==(n=B())&&null!==(r=$n())?n=[n,r]:(n=null,a=o);null!==n;)t.push(n),o=a,null!==(n=B())&&null!==(r=$n())?n=[n,r]:(n=null,a=o);null!==t?e=[e,t]:(e=null,a=i)}else e=null,a=i;return e},call_id:Mn,replaces_param:$n,to_tag:On,from_tag:Rn,early_flag:Nn};if(void 0!==r){if(void 0===i[r])throw new Error("Invalid rule name: "+t(r)+".")}else r="CRLF";var a=0,o=0,s=[];function l(e){a<o||(a>o&&(o=a,s=[]),s.push(e))}function c(){var e;return"\r\n"===n.substr(a,2)?(e="\r\n",a+=2):(e=null,l('"\\r\\n"')),e}function u(){var e;return/^[0-9]/.test(n.charAt(a))?(e=n.charAt(a),a++):(e=null,l("[0-9]")),e}function f(){var e;return/^[a-zA-Z]/.test(n.charAt(a))?(e=n.charAt(a),a++):(e=null,l("[a-zA-Z]")),e}function d(){var e;return/^[0-9a-fA-F]/.test(n.charAt(a))?(e=n.charAt(a),a++):(e=null,l("[0-9a-fA-F]")),e}function h(){var e;return null===(e=g())&&(e=_()),e}function p(){var e;return/^[\0-\xFF]/.test(n.charAt(a))?(e=n.charAt(a),a++):(e=null,l("[\\0-\\xFF]")),e}function m(){var e;return/^["]/.test(n.charAt(a))?(e=n.charAt(a),a++):(e=null,l('["]')),e}function g(){var e;return 32===n.charCodeAt(a)?(e=" ",a++):(e=null,l('" "')),e}function _(){var e;return 9===n.charCodeAt(a)?(e="\t",a++):(e=null,l('"\\t"')),e}function b(){var e;return/^[a-zA-Z0-9]/.test(n.charAt(a))?(e=n.charAt(a),a++):(e=null,l("[a-zA-Z0-9]")),e}function v(){var e;return 59===n.charCodeAt(a)?(e=";",a++):(e=null,l('";"')),null===e&&(47===n.charCodeAt(a)?(e="/",a++):(e=null,l('"/"')),null===e&&(63===n.charCodeAt(a)?(e="?",a++):(e=null,l('"?"')),null===e&&(58===n.charCodeAt(a)?(e=":",a++):(e=null,l('":"')),null===e&&(64===n.charCodeAt(a)?(e="@",a++):(e=null,l('"@"')),null===e&&(38===n.charCodeAt(a)?(e="&",a++):(e=null,l('"&"')),null===e&&(61===n.charCodeAt(a)?(e="=",a++):(e=null,l('"="')),null===e&&(43===n.charCodeAt(a)?(e="+",a++):(e=null,l('"+"')),null===e&&(36===n.charCodeAt(a)?(e="$",a++):(e=null,l('"$"')),null===e&&(44===n.charCodeAt(a)?(e=",",a++):(e=null,l('","'))))))))))),e}function y(){var e;return null===(e=b())&&(e=w()),e}function w(){var e;return 45===n.charCodeAt(a)?(e="-",a++):(e=null,l('"-"')),null===e&&(95===n.charCodeAt(a)?(e="_",a++):(e=null,l('"_"')),null===e&&(46===n.charCodeAt(a)?(e=".",a++):(e=null,l('"."')),null===e&&(33===n.charCodeAt(a)?(e="!",a++):(e=null,l('"!"')),null===e&&(126===n.charCodeAt(a)?(e="~",a++):(e=null,l('"~"')),null===e&&(42===n.charCodeAt(a)?(e="*",a++):(e=null,l('"*"')),null===e&&(39===n.charCodeAt(a)?(e="'",a++):(e=null,l('"\'"')),null===e&&(40===n.charCodeAt(a)?(e="(",a++):(e=null,l('"("')),null===e&&(41===n.charCodeAt(a)?(e=")",a++):(e=null,l('")"')))))))))),e}function C(){var e,t,r,i,o;return i=a,o=a,37===n.charCodeAt(a)?(e="%",a++):(e=null,l('"%"')),null!==e&&null!==(t=d())&&null!==(r=d())?e=[e,t,r]:(e=null,a=o),null!==e&&(e=e.join("")),null===e&&(a=i),e}function A(){var e,t,n,r,i,o;for(r=a,i=a,o=a,e=[],t=h();null!==t;)e.push(t),t=h();if(null!==e&&null!==(t=c())?e=[e,t]:(e=null,a=o),null!==(e=null!==e?e:"")){if(null!==(n=h()))for(t=[];null!==n;)t.push(n),n=h();else t=null;null!==t?e=[e,t]:(e=null,a=i)}else e=null,a=i;return null!==e&&(e=" "),null===e&&(a=r),e}function S(){var e;return e=null!==(e=A())?e:""}function x(){var e,t,r,i,o;for(i=a,o=a,e=[],null===(t=g())&&(t=_());null!==t;)e.push(t),null===(t=g())&&(t=_());return null!==e?(58===n.charCodeAt(a)?(t=":",a++):(t=null,l('":"')),null!==t&&null!==(r=S())?e=[e,t,r]:(e=null,a=o)):(e=null,a=o),null!==e&&(e=":"),null===e&&(a=i),e}function T(){var e,t,r,i,o,s,l;if(o=a,s=a,null!==(t=k()))for(e=[];null!==t;)e.push(t),t=k();else e=null;if(null!==e){for(t=[],l=a,r=[],i=A();null!==i;)r.push(i),i=A();for(null!==r&&null!==(i=k())?r=[r,i]:(r=null,a=l);null!==r;){for(t.push(r),l=a,r=[],i=A();null!==i;)r.push(i),i=A();null!==r&&null!==(i=k())?r=[r,i]:(r=null,a=l)}null!==t?e=[e,t]:(e=null,a=s)}else e=null,a=s;return null!==e&&(e=function(e){return n.substring(a,e)}(o)),null===e&&(a=o),e}function k(){var e;return/^[!-~]/.test(n.charAt(a))?(e=n.charAt(a),a++):(e=null,l("[!-~]")),null===e&&(e=E()),e}function E(){var e;return/^[\x80-\uFFFF]/.test(n.charAt(a))?(e=n.charAt(a),a++):(e=null,l("[\\x80-\\uFFFF]")),e}function D(){var e;return/^[\x80-\xBF]/.test(n.charAt(a))?(e=n.charAt(a),a++):(e=null,l("[\\x80-\\xBF]")),e}function I(){var e,t,r;if(r=a,null===(t=b())&&(45===n.charCodeAt(a)?(t="-",a++):(t=null,l('"-"')),null===t&&(46===n.charCodeAt(a)?(t=".",a++):(t=null,l('"."')),null===t&&(33===n.charCodeAt(a)?(t="!",a++):(t=null,l('"!"')),null===t&&(37===n.charCodeAt(a)?(t="%",a++):(t=null,l('"%"')),null===t&&(42===n.charCodeAt(a)?(t="*",a++):(t=null,l('"*"')),null===t&&(95===n.charCodeAt(a)?(t="_",a++):(t=null,l('"_"')),null===t&&(43===n.charCodeAt(a)?(t="+",a++):(t=null,l('"+"')),null===t&&(96===n.charCodeAt(a)?(t="`",a++):(t=null,l('"`"')),null===t&&(39===n.charCodeAt(a)?(t="'",a++):(t=null,l('"\'"')),null===t&&(126===n.charCodeAt(a)?(t="~",a++):(t=null,l('"~"')))))))))))),null!==t)for(e=[];null!==t;)e.push(t),null===(t=b())&&(45===n.charCodeAt(a)?(t="-",a++):(t=null,l('"-"')),null===t&&(46===n.charCodeAt(a)?(t=".",a++):(t=null,l('"."')),null===t&&(33===n.charCodeAt(a)?(t="!",a++):(t=null,l('"!"')),null===t&&(37===n.charCodeAt(a)?(t="%",a++):(t=null,l('"%"')),null===t&&(42===n.charCodeAt(a)?(t="*",a++):(t=null,l('"*"')),null===t&&(95===n.charCodeAt(a)?(t="_",a++):(t=null,l('"_"')),null===t&&(43===n.charCodeAt(a)?(t="+",a++):(t=null,l('"+"')),null===t&&(96===n.charCodeAt(a)?(t="`",a++):(t=null,l('"`"')),null===t&&(39===n.charCodeAt(a)?(t="'",a++):(t=null,l('"\'"')),null===t&&(126===n.charCodeAt(a)?(t="~",a++):(t=null,l('"~"'))))))))))));else e=null;return null!==e&&(e=function(e){return n.substring(a,e)}(r)),null===e&&(a=r),e}function P(){var e,t,r;if(r=a,null===(t=b())&&(45===n.charCodeAt(a)?(t="-",a++):(t=null,l('"-"')),null===t&&(33===n.charCodeAt(a)?(t="!",a++):(t=null,l('"!"')),null===t&&(37===n.charCodeAt(a)?(t="%",a++):(t=null,l('"%"')),null===t&&(42===n.charCodeAt(a)?(t="*",a++):(t=null,l('"*"')),null===t&&(95===n.charCodeAt(a)?(t="_",a++):(t=null,l('"_"')),null===t&&(43===n.charCodeAt(a)?(t="+",a++):(t=null,l('"+"')),null===t&&(96===n.charCodeAt(a)?(t="`",a++):(t=null,l('"`"')),null===t&&(39===n.charCodeAt(a)?(t="'",a++):(t=null,l('"\'"')),null===t&&(126===n.charCodeAt(a)?(t="~",a++):(t=null,l('"~"'))))))))))),null!==t)for(e=[];null!==t;)e.push(t),null===(t=b())&&(45===n.charCodeAt(a)?(t="-",a++):(t=null,l('"-"')),null===t&&(33===n.charCodeAt(a)?(t="!",a++):(t=null,l('"!"')),null===t&&(37===n.charCodeAt(a)?(t="%",a++):(t=null,l('"%"')),null===t&&(42===n.charCodeAt(a)?(t="*",a++):(t=null,l('"*"')),null===t&&(95===n.charCodeAt(a)?(t="_",a++):(t=null,l('"_"')),null===t&&(43===n.charCodeAt(a)?(t="+",a++):(t=null,l('"+"')),null===t&&(96===n.charCodeAt(a)?(t="`",a++):(t=null,l('"`"')),null===t&&(39===n.charCodeAt(a)?(t="'",a++):(t=null,l('"\'"')),null===t&&(126===n.charCodeAt(a)?(t="~",a++):(t=null,l('"~"')))))))))));else e=null;return null!==e&&(e=function(e){return n.substring(a,e)}(r)),null===e&&(a=r),e}function M(){var e,t,r;if(r=a,null===(t=b())&&(45===n.charCodeAt(a)?(t="-",a++):(t=null,l('"-"')),null===t&&(46===n.charCodeAt(a)?(t=".",a++):(t=null,l('"."')),null===t&&(33===n.charCodeAt(a)?(t="!",a++):(t=null,l('"!"')),null===t&&(37===n.charCodeAt(a)?(t="%",a++):(t=null,l('"%"')),null===t&&(42===n.charCodeAt(a)?(t="*",a++):(t=null,l('"*"')),null===t&&(95===n.charCodeAt(a)?(t="_",a++):(t=null,l('"_"')),null===t&&(43===n.charCodeAt(a)?(t="+",a++):(t=null,l('"+"')),null===t&&(96===n.charCodeAt(a)?(t="`",a++):(t=null,l('"`"')),null===t&&(39===n.charCodeAt(a)?(t="'",a++):(t=null,l('"\'"')),null===t&&(126===n.charCodeAt(a)?(t="~",a++):(t=null,l('"~"')),null===t&&(40===n.charCodeAt(a)?(t="(",a++):(t=null,l('"("')),null===t&&(41===n.charCodeAt(a)?(t=")",a++):(t=null,l('")"')),null===t&&(60===n.charCodeAt(a)?(t="<",a++):(t=null,l('"<"')),null===t&&(62===n.charCodeAt(a)?(t=">",a++):(t=null,l('">"')),null===t&&(58===n.charCodeAt(a)?(t=":",a++):(t=null,l('":"')),null===t&&(92===n.charCodeAt(a)?(t="\\",a++):(t=null,l('"\\\\"')),null===t&&null===(t=m())&&(47===n.charCodeAt(a)?(t="/",a++):(t=null,l('"/"')),null===t&&(91===n.charCodeAt(a)?(t="[",a++):(t=null,l('"["')),null===t&&(93===n.charCodeAt(a)?(t="]",a++):(t=null,l('"]"')),null===t&&(63===n.charCodeAt(a)?(t="?",a++):(t=null,l('"?"')),null===t&&(123===n.charCodeAt(a)?(t="{",a++):(t=null,l('"{"')),null===t&&(125===n.charCodeAt(a)?(t="}",a++):(t=null,l('"}"')))))))))))))))))))))))),null!==t)for(e=[];null!==t;)e.push(t),null===(t=b())&&(45===n.charCodeAt(a)?(t="-",a++):(t=null,l('"-"')),null===t&&(46===n.charCodeAt(a)?(t=".",a++):(t=null,l('"."')),null===t&&(33===n.charCodeAt(a)?(t="!",a++):(t=null,l('"!"')),null===t&&(37===n.charCodeAt(a)?(t="%",a++):(t=null,l('"%"')),null===t&&(42===n.charCodeAt(a)?(t="*",a++):(t=null,l('"*"')),null===t&&(95===n.charCodeAt(a)?(t="_",a++):(t=null,l('"_"')),null===t&&(43===n.charCodeAt(a)?(t="+",a++):(t=null,l('"+"')),null===t&&(96===n.charCodeAt(a)?(t="`",a++):(t=null,l('"`"')),null===t&&(39===n.charCodeAt(a)?(t="'",a++):(t=null,l('"\'"')),null===t&&(126===n.charCodeAt(a)?(t="~",a++):(t=null,l('"~"')),null===t&&(40===n.charCodeAt(a)?(t="(",a++):(t=null,l('"("')),null===t&&(41===n.charCodeAt(a)?(t=")",a++):(t=null,l('")"')),null===t&&(60===n.charCodeAt(a)?(t="<",a++):(t=null,l('"<"')),null===t&&(62===n.charCodeAt(a)?(t=">",a++):(t=null,l('">"')),null===t&&(58===n.charCodeAt(a)?(t=":",a++):(t=null,l('":"')),null===t&&(92===n.charCodeAt(a)?(t="\\",a++):(t=null,l('"\\\\"')),null===t&&null===(t=m())&&(47===n.charCodeAt(a)?(t="/",a++):(t=null,l('"/"')),null===t&&(91===n.charCodeAt(a)?(t="[",a++):(t=null,l('"["')),null===t&&(93===n.charCodeAt(a)?(t="]",a++):(t=null,l('"]"')),null===t&&(63===n.charCodeAt(a)?(t="?",a++):(t=null,l('"?"')),null===t&&(123===n.charCodeAt(a)?(t="{",a++):(t=null,l('"{"')),null===t&&(125===n.charCodeAt(a)?(t="}",a++):(t=null,l('"}"'))))))))))))))))))))))));else e=null;return null!==e&&(e=function(e){return n.substring(a,e)}(r)),null===e&&(a=r),e}function $(){var e,t,r,i,o;return i=a,o=a,null!==(e=S())?(42===n.charCodeAt(a)?(t="*",a++):(t=null,l('"*"')),null!==t&&null!==(r=S())?e=[e,t,r]:(e=null,a=o)):(e=null,a=o),null!==e&&(e="*"),null===e&&(a=i),e}function O(){var e,t,r,i,o;return i=a,o=a,null!==(e=S())?(47===n.charCodeAt(a)?(t="/",a++):(t=null,l('"/"')),null!==t&&null!==(r=S())?e=[e,t,r]:(e=null,a=o)):(e=null,a=o),null!==e&&(e="/"),null===e&&(a=i),e}function R(){var e,t,r,i,o;return i=a,o=a,null!==(e=S())?(61===n.charCodeAt(a)?(t="=",a++):(t=null,l('"="')),null!==t&&null!==(r=S())?e=[e,t,r]:(e=null,a=o)):(e=null,a=o),null!==e&&(e="="),null===e&&(a=i),e}function N(){var e,t,r,i,o;return i=a,o=a,null!==(e=S())?(40===n.charCodeAt(a)?(t="(",a++):(t=null,l('"("')),null!==t&&null!==(r=S())?e=[e,t,r]:(e=null,a=o)):(e=null,a=o),null!==e&&(e="("),null===e&&(a=i),e}function L(){var e,t,r,i,o;return i=a,o=a,null!==(e=S())?(41===n.charCodeAt(a)?(t=")",a++):(t=null,l('")"')),null!==t&&null!==(r=S())?e=[e,t,r]:(e=null,a=o)):(e=null,a=o),null!==e&&(e=")"),null===e&&(a=i),e}function F(){var e,t,r,i;return r=a,i=a,62===n.charCodeAt(a)?(e=">",a++):(e=null,l('">"')),null!==e&&null!==(t=S())?e=[e,t]:(e=null,a=i),null!==e&&(e=">"),null===e&&(a=r),e}function G(){var e,t,r,i;return r=a,i=a,null!==(e=S())?(60===n.charCodeAt(a)?(t="<",a++):(t=null,l('"<"')),null!==t?e=[e,t]:(e=null,a=i)):(e=null,a=i),null!==e&&(e="<"),null===e&&(a=r),e}function j(){var e,t,r,i,o;return i=a,o=a,null!==(e=S())?(44===n.charCodeAt(a)?(t=",",a++):(t=null,l('","')),null!==t&&null!==(r=S())?e=[e,t,r]:(e=null,a=o)):(e=null,a=o),null!==e&&(e=","),null===e&&(a=i),e}function B(){var e,t,r,i,o;return i=a,o=a,null!==(e=S())?(59===n.charCodeAt(a)?(t=";",a++):(t=null,l('";"')),null!==t&&null!==(r=S())?e=[e,t,r]:(e=null,a=o)):(e=null,a=o),null!==e&&(e=";"),null===e&&(a=i),e}function U(){var e,t,r,i,o;return i=a,o=a,null!==(e=S())?(58===n.charCodeAt(a)?(t=":",a++):(t=null,l('":"')),null!==t&&null!==(r=S())?e=[e,t,r]:(e=null,a=o)):(e=null,a=o),null!==e&&(e=":"),null===e&&(a=i),e}function H(){var e,t,n,r;return n=a,r=a,null!==(e=S())&&null!==(t=m())?e=[e,t]:(e=null,a=r),null!==e&&(e='"'),null===e&&(a=n),e}function W(){var e,t,n,r;return n=a,r=a,null!==(e=m())&&null!==(t=S())?e=[e,t]:(e=null,a=r),null!==e&&(e='"'),null===e&&(a=n),e}function q(){var e;return/^[!-']/.test(n.charAt(a))?(e=n.charAt(a),a++):(e=null,l("[!-']")),null===e&&(/^[*-[]/.test(n.charAt(a))?(e=n.charAt(a),a++):(e=null,l("[*-[]")),null===e&&(/^[\]-~]/.test(n.charAt(a))?(e=n.charAt(a),a++):(e=null,l("[\\]-~]")),null===e&&null===(e=E())&&(e=A()))),e}function z(){var e,t,r,i,o,s;if(o=a,s=a,null!==(e=S()))if(null!==(t=m())){for(r=[],null===(i=Y())&&(i=K());null!==i;)r.push(i),null===(i=Y())&&(i=K());null!==r&&null!==(i=m())?e=[e,t,r,i]:(e=null,a=s)}else e=null,a=s;else e=null,a=s;return null!==e&&(e=function(e){return n.substring(a,e)}(o)),null===e&&(a=o),e}function V(){var e,t,r,i,o,s;if(o=a,s=a,null!==(e=S()))if(null!==(t=m())){for(r=[],null===(i=Y())&&(i=K());null!==i;)r.push(i),null===(i=Y())&&(i=K());null!==r&&null!==(i=m())?e=[e,t,r,i]:(e=null,a=s)}else e=null,a=s;else e=null,a=s;return null!==e&&(e=function(e){return n.substring(a-1,e+1)}(o)),null===e&&(a=o),e}function Y(){var e;return null===(e=A())&&(33===n.charCodeAt(a)?(e="!",a++):(e=null,l('"!"')),null===e&&(/^[#-[]/.test(n.charAt(a))?(e=n.charAt(a),a++):(e=null,l("[#-[]")),null===e&&(/^[\]-~]/.test(n.charAt(a))?(e=n.charAt(a),a++):(e=null,l("[\\]-~]")),null===e&&(e=E())))),e}function K(){var e,t,r;return r=a,92===n.charCodeAt(a)?(e="\\",a++):(e=null,l('"\\\\"')),null!==e?(/^[\0-\t]/.test(n.charAt(a))?(t=n.charAt(a),a++):(t=null,l("[\\0-\\t]")),null===t&&(/^[\x0B-\f]/.test(n.charAt(a))?(t=n.charAt(a),a++):(t=null,l("[\\x0B-\\f]")),null===t&&(/^[\x0E-]/.test(n.charAt(a))?(t=n.charAt(a),a++):(t=null,l("[\\x0E-]")))),null!==t?e=[e,t]:(e=null,a=r)):(e=null,a=r),e}function Q(){var e,t,r,i,o,s;return o=a,s=a,null!==(e=Z())?(58===n.charCodeAt(a)?(t=":",a++):(t=null,l('":"')),null!==t&&null!==(r=null!==(r=te())?r:"")&&null!==(i=ae())?e=[e,t,r,i]:(e=null,a=s)):(e=null,a=s),null!==e&&(e=function(e){try{Gn.uri=new Ln(Gn.scheme,Gn.user,Gn.host,Gn.port),delete Gn.scheme,delete Gn.user,delete Gn.host,delete Gn.host_type,delete Gn.port}catch(e){Gn=-1}}()),null===e&&(a=o),e}function X(){var e,t,i,o,s,c,u,f;return u=a,f=a,null!==(e=Z())?(58===n.charCodeAt(a)?(t=":",a++):(t=null,l('":"')),null!==t&&null!==(i=null!==(i=te())?i:"")&&null!==(o=ae())&&null!==(s=_e())&&null!==(c=null!==(c=Ie())?c:"")?e=[e,t,i,o,s,c]:(e=null,a=f)):(e=null,a=f),null!==e&&(e=function(e){try{Gn.uri=new Ln(Gn.scheme,Gn.user,Gn.host,Gn.port,Gn.uri_params,Gn.uri_headers),delete Gn.scheme,delete Gn.user,delete Gn.host,delete Gn.host_type,delete Gn.port,delete Gn.uri_params,"SIP_URI"===r&&(Gn=Gn.uri)}catch(e){Gn=-1}}()),null===e&&(a=u),e}function Z(){var e;return null===(e=J())&&(e=ee()),e}function J(){var e,t,r;return t=a,"sips"===n.substr(a,4).toLowerCase()?(e=n.substr(a,4),a+=4):(e=null,l('"sips"')),null!==e&&(r=e,e=void(Gn.scheme=r.toLowerCase())),null===e&&(a=t),e}function ee(){var e,t,r;return t=a,"sip"===n.substr(a,3).toLowerCase()?(e=n.substr(a,3),a+=3):(e=null,l('"sip"')),null!==e&&(r=e,e=void(Gn.scheme=r.toLowerCase())),null===e&&(a=t),e}function te(){var e,t,r,i,o,s;return i=a,o=a,null!==(e=ne())?(s=a,58===n.charCodeAt(a)?(t=":",a++):(t=null,l('":"')),null!==t&&null!==(r=ie())?t=[t,r]:(t=null,a=s),null!==(t=null!==t?t:"")?(64===n.charCodeAt(a)?(r="@",a++):(r=null,l('"@"')),null!==r?e=[e,t,r]:(e=null,a=o)):(e=null,a=o)):(e=null,a=o),null!==e&&(e=function(e){Gn.user=decodeURIComponent(n.substring(a-1,e))}(i)),null===e&&(a=i),e}function ne(){var e,t;if(null===(t=y())&&null===(t=C())&&(t=re()),null!==t)for(e=[];null!==t;)e.push(t),null===(t=y())&&null===(t=C())&&(t=re());else e=null;return e}function re(){var e;return 38===n.charCodeAt(a)?(e="&",a++):(e=null,l('"&"')),null===e&&(61===n.charCodeAt(a)?(e="=",a++):(e=null,l('"="')),null===e&&(43===n.charCodeAt(a)?(e="+",a++):(e=null,l('"+"')),null===e&&(36===n.charCodeAt(a)?(e="$",a++):(e=null,l('"$"')),null===e&&(44===n.charCodeAt(a)?(e=",",a++):(e=null,l('","')),null===e&&(59===n.charCodeAt(a)?(e=";",a++):(e=null,l('";"')),null===e&&(63===n.charCodeAt(a)?(e="?",a++):(e=null,l('"?"')),null===e&&(47===n.charCodeAt(a)?(e="/",a++):(e=null,l('"/"'))))))))),e}function ie(){var e,t,r;for(r=a,e=[],null===(t=y())&&null===(t=C())&&(38===n.charCodeAt(a)?(t="&",a++):(t=null,l('"&"')),null===t&&(61===n.charCodeAt(a)?(t="=",a++):(t=null,l('"="')),null===t&&(43===n.charCodeAt(a)?(t="+",a++):(t=null,l('"+"')),null===t&&(36===n.charCodeAt(a)?(t="$",a++):(t=null,l('"$"')),null===t&&(44===n.charCodeAt(a)?(t=",",a++):(t=null,l('","')))))));null!==t;)e.push(t),null===(t=y())&&null===(t=C())&&(38===n.charCodeAt(a)?(t="&",a++):(t=null,l('"&"')),null===t&&(61===n.charCodeAt(a)?(t="=",a++):(t=null,l('"="')),null===t&&(43===n.charCodeAt(a)?(t="+",a++):(t=null,l('"+"')),null===t&&(36===n.charCodeAt(a)?(t="$",a++):(t=null,l('"$"')),null===t&&(44===n.charCodeAt(a)?(t=",",a++):(t=null,l('","')))))));return null!==e&&(e=function(e){Gn.password=n.substring(a,e)}(r)),null===e&&(a=r),e}function ae(){var e,t,r,i,o;return i=a,null!==(e=oe())?(o=a,58===n.charCodeAt(a)?(t=":",a++):(t=null,l('":"')),null!==t&&null!==(r=ge())?t=[t,r]:(t=null,a=o),null!==(t=null!==t?t:"")?e=[e,t]:(e=null,a=i)):(e=null,a=i),e}function oe(){var e,t;return t=a,null===(e=se())&&null===(e=pe())&&(e=ue()),null!==e&&(e=function(e){return Gn.host=n.substring(a,e).toLowerCase(),Gn.host}(t)),null===e&&(a=t),e}function se(){var e,t,r,i,o,s;for(i=a,o=a,e=[],s=a,null!==(t=le())?(46===n.charCodeAt(a)?(r=".",a++):(r=null,l('"."')),null!==r?t=[t,r]:(t=null,a=s)):(t=null,a=s);null!==t;)e.push(t),s=a,null!==(t=le())?(46===n.charCodeAt(a)?(r=".",a++):(r=null,l('"."')),null!==r?t=[t,r]:(t=null,a=s)):(t=null,a=s);return null!==e&&null!==(t=ce())?(46===n.charCodeAt(a)?(r=".",a++):(r=null,l('"."')),null!==(r=null!==r?r:"")?e=[e,t,r]:(e=null,a=o)):(e=null,a=o),null!==e&&(e=function(e){return Gn.host_type="domain",n.substring(a,e)}(i)),null===e&&(a=i),e}function le(){var e,t,r,i;if(i=a,null!==(e=b())){for(t=[],null===(r=b())&&(45===n.charCodeAt(a)?(r="-",a++):(r=null,l('"-"')),null===r&&(95===n.charCodeAt(a)?(r="_",a++):(r=null,l('"_"'))));null!==r;)t.push(r),null===(r=b())&&(45===n.charCodeAt(a)?(r="-",a++):(r=null,l('"-"')),null===r&&(95===n.charCodeAt(a)?(r="_",a++):(r=null,l('"_"'))));null!==t?e=[e,t]:(e=null,a=i)}else e=null,a=i;return e}function ce(){var e,t,r,i;if(i=a,null!==(e=f())){for(t=[],null===(r=b())&&(45===n.charCodeAt(a)?(r="-",a++):(r=null,l('"-"')),null===r&&(95===n.charCodeAt(a)?(r="_",a++):(r=null,l('"_"'))));null!==r;)t.push(r),null===(r=b())&&(45===n.charCodeAt(a)?(r="-",a++):(r=null,l('"-"')),null===r&&(95===n.charCodeAt(a)?(r="_",a++):(r=null,l('"_"'))));null!==t?e=[e,t]:(e=null,a=i)}else e=null,a=i;return e}function ue(){var e,t,r,i,o;return i=a,o=a,91===n.charCodeAt(a)?(e="[",a++):(e=null,l('"["')),null!==e&&null!==(t=fe())?(93===n.charCodeAt(a)?(r="]",a++):(r=null,l('"]"')),null!==r?e=[e,t,r]:(e=null,a=o)):(e=null,a=o),null!==e&&(e=function(e){return Gn.host_type="IPv6",n.substring(a,e)}(i)),null===e&&(a=i),e}function fe(){var e,t,r,i,o,s,c,u,f,d,h,p,m,g,_,b;return g=a,_=a,null!==(e=de())?(58===n.charCodeAt(a)?(t=":",a++):(t=null,l('":"')),null!==t&&null!==(r=de())?(58===n.charCodeAt(a)?(i=":",a++):(i=null,l('":"')),null!==i&&null!==(o=de())?(58===n.charCodeAt(a)?(s=":",a++):(s=null,l('":"')),null!==s&&null!==(c=de())?(58===n.charCodeAt(a)?(u=":",a++):(u=null,l('":"')),null!==u&&null!==(f=de())?(58===n.charCodeAt(a)?(d=":",a++):(d=null,l('":"')),null!==d&&null!==(h=de())?(58===n.charCodeAt(a)?(p=":",a++):(p=null,l('":"')),null!==p&&null!==(m=he())?e=[e,t,r,i,o,s,c,u,f,d,h,p,m]:(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_),null===e&&(_=a,"::"===n.substr(a,2)?(e="::",a+=2):(e=null,l('"::"')),null!==e&&null!==(t=de())?(58===n.charCodeAt(a)?(r=":",a++):(r=null,l('":"')),null!==r&&null!==(i=de())?(58===n.charCodeAt(a)?(o=":",a++):(o=null,l('":"')),null!==o&&null!==(s=de())?(58===n.charCodeAt(a)?(c=":",a++):(c=null,l('":"')),null!==c&&null!==(u=de())?(58===n.charCodeAt(a)?(f=":",a++):(f=null,l('":"')),null!==f&&null!==(d=de())?(58===n.charCodeAt(a)?(h=":",a++):(h=null,l('":"')),null!==h&&null!==(p=he())?e=[e,t,r,i,o,s,c,u,f,d,h,p]:(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_),null===e&&(_=a,"::"===n.substr(a,2)?(e="::",a+=2):(e=null,l('"::"')),null!==e&&null!==(t=de())?(58===n.charCodeAt(a)?(r=":",a++):(r=null,l('":"')),null!==r&&null!==(i=de())?(58===n.charCodeAt(a)?(o=":",a++):(o=null,l('":"')),null!==o&&null!==(s=de())?(58===n.charCodeAt(a)?(c=":",a++):(c=null,l('":"')),null!==c&&null!==(u=de())?(58===n.charCodeAt(a)?(f=":",a++):(f=null,l('":"')),null!==f&&null!==(d=he())?e=[e,t,r,i,o,s,c,u,f,d]:(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_),null===e&&(_=a,"::"===n.substr(a,2)?(e="::",a+=2):(e=null,l('"::"')),null!==e&&null!==(t=de())?(58===n.charCodeAt(a)?(r=":",a++):(r=null,l('":"')),null!==r&&null!==(i=de())?(58===n.charCodeAt(a)?(o=":",a++):(o=null,l('":"')),null!==o&&null!==(s=de())?(58===n.charCodeAt(a)?(c=":",a++):(c=null,l('":"')),null!==c&&null!==(u=he())?e=[e,t,r,i,o,s,c,u]:(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_),null===e&&(_=a,"::"===n.substr(a,2)?(e="::",a+=2):(e=null,l('"::"')),null!==e&&null!==(t=de())?(58===n.charCodeAt(a)?(r=":",a++):(r=null,l('":"')),null!==r&&null!==(i=de())?(58===n.charCodeAt(a)?(o=":",a++):(o=null,l('":"')),null!==o&&null!==(s=he())?e=[e,t,r,i,o,s]:(e=null,a=_)):(e=null,a=_)):(e=null,a=_),null===e&&(_=a,"::"===n.substr(a,2)?(e="::",a+=2):(e=null,l('"::"')),null!==e&&null!==(t=de())?(58===n.charCodeAt(a)?(r=":",a++):(r=null,l('":"')),null!==r&&null!==(i=he())?e=[e,t,r,i]:(e=null,a=_)):(e=null,a=_),null===e&&(_=a,"::"===n.substr(a,2)?(e="::",a+=2):(e=null,l('"::"')),null!==e&&null!==(t=he())?e=[e,t]:(e=null,a=_),null===e&&(_=a,"::"===n.substr(a,2)?(e="::",a+=2):(e=null,l('"::"')),null!==e&&null!==(t=de())?e=[e,t]:(e=null,a=_),null===e&&(_=a,null!==(e=de())?("::"===n.substr(a,2)?(t="::",a+=2):(t=null,l('"::"')),null!==t&&null!==(r=de())?(58===n.charCodeAt(a)?(i=":",a++):(i=null,l('":"')),null!==i&&null!==(o=de())?(58===n.charCodeAt(a)?(s=":",a++):(s=null,l('":"')),null!==s&&null!==(c=de())?(58===n.charCodeAt(a)?(u=":",a++):(u=null,l('":"')),null!==u&&null!==(f=de())?(58===n.charCodeAt(a)?(d=":",a++):(d=null,l('":"')),null!==d&&null!==(h=he())?e=[e,t,r,i,o,s,c,u,f,d,h]:(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_),null===e&&(_=a,null!==(e=de())?(b=a,58===n.charCodeAt(a)?(t=":",a++):(t=null,l('":"')),null!==t&&null!==(r=de())?t=[t,r]:(t=null,a=b),null!==(t=null!==t?t:"")?("::"===n.substr(a,2)?(r="::",a+=2):(r=null,l('"::"')),null!==r&&null!==(i=de())?(58===n.charCodeAt(a)?(o=":",a++):(o=null,l('":"')),null!==o&&null!==(s=de())?(58===n.charCodeAt(a)?(c=":",a++):(c=null,l('":"')),null!==c&&null!==(u=de())?(58===n.charCodeAt(a)?(f=":",a++):(f=null,l('":"')),null!==f&&null!==(d=he())?e=[e,t,r,i,o,s,c,u,f,d]:(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_),null===e&&(_=a,null!==(e=de())?(b=a,58===n.charCodeAt(a)?(t=":",a++):(t=null,l('":"')),null!==t&&null!==(r=de())?t=[t,r]:(t=null,a=b),null!==(t=null!==t?t:"")?(b=a,58===n.charCodeAt(a)?(r=":",a++):(r=null,l('":"')),null!==r&&null!==(i=de())?r=[r,i]:(r=null,a=b),null!==(r=null!==r?r:"")?("::"===n.substr(a,2)?(i="::",a+=2):(i=null,l('"::"')),null!==i&&null!==(o=de())?(58===n.charCodeAt(a)?(s=":",a++):(s=null,l('":"')),null!==s&&null!==(c=de())?(58===n.charCodeAt(a)?(u=":",a++):(u=null,l('":"')),null!==u&&null!==(f=he())?e=[e,t,r,i,o,s,c,u,f]:(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_),null===e&&(_=a,null!==(e=de())?(b=a,58===n.charCodeAt(a)?(t=":",a++):(t=null,l('":"')),null!==t&&null!==(r=de())?t=[t,r]:(t=null,a=b),null!==(t=null!==t?t:"")?(b=a,58===n.charCodeAt(a)?(r=":",a++):(r=null,l('":"')),null!==r&&null!==(i=de())?r=[r,i]:(r=null,a=b),null!==(r=null!==r?r:"")?(b=a,58===n.charCodeAt(a)?(i=":",a++):(i=null,l('":"')),null!==i&&null!==(o=de())?i=[i,o]:(i=null,a=b),null!==(i=null!==i?i:"")?("::"===n.substr(a,2)?(o="::",a+=2):(o=null,l('"::"')),null!==o&&null!==(s=de())?(58===n.charCodeAt(a)?(c=":",a++):(c=null,l('":"')),null!==c&&null!==(u=he())?e=[e,t,r,i,o,s,c,u]:(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_),null===e&&(_=a,null!==(e=de())?(b=a,58===n.charCodeAt(a)?(t=":",a++):(t=null,l('":"')),null!==t&&null!==(r=de())?t=[t,r]:(t=null,a=b),null!==(t=null!==t?t:"")?(b=a,58===n.charCodeAt(a)?(r=":",a++):(r=null,l('":"')),null!==r&&null!==(i=de())?r=[r,i]:(r=null,a=b),null!==(r=null!==r?r:"")?(b=a,58===n.charCodeAt(a)?(i=":",a++):(i=null,l('":"')),null!==i&&null!==(o=de())?i=[i,o]:(i=null,a=b),null!==(i=null!==i?i:"")?(b=a,58===n.charCodeAt(a)?(o=":",a++):(o=null,l('":"')),null!==o&&null!==(s=de())?o=[o,s]:(o=null,a=b),null!==(o=null!==o?o:"")?("::"===n.substr(a,2)?(s="::",a+=2):(s=null,l('"::"')),null!==s&&null!==(c=he())?e=[e,t,r,i,o,s,c]:(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_),null===e&&(_=a,null!==(e=de())?(b=a,58===n.charCodeAt(a)?(t=":",a++):(t=null,l('":"')),null!==t&&null!==(r=de())?t=[t,r]:(t=null,a=b),null!==(t=null!==t?t:"")?(b=a,58===n.charCodeAt(a)?(r=":",a++):(r=null,l('":"')),null!==r&&null!==(i=de())?r=[r,i]:(r=null,a=b),null!==(r=null!==r?r:"")?(b=a,58===n.charCodeAt(a)?(i=":",a++):(i=null,l('":"')),null!==i&&null!==(o=de())?i=[i,o]:(i=null,a=b),null!==(i=null!==i?i:"")?(b=a,58===n.charCodeAt(a)?(o=":",a++):(o=null,l('":"')),null!==o&&null!==(s=de())?o=[o,s]:(o=null,a=b),null!==(o=null!==o?o:"")?(b=a,58===n.charCodeAt(a)?(s=":",a++):(s=null,l('":"')),null!==s&&null!==(c=de())?s=[s,c]:(s=null,a=b),null!==(s=null!==s?s:"")?("::"===n.substr(a,2)?(c="::",a+=2):(c=null,l('"::"')),null!==c&&null!==(u=de())?e=[e,t,r,i,o,s,c,u]:(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_),null===e&&(_=a,null!==(e=de())?(b=a,58===n.charCodeAt(a)?(t=":",a++):(t=null,l('":"')),null!==t&&null!==(r=de())?t=[t,r]:(t=null,a=b),null!==(t=null!==t?t:"")?(b=a,58===n.charCodeAt(a)?(r=":",a++):(r=null,l('":"')),null!==r&&null!==(i=de())?r=[r,i]:(r=null,a=b),null!==(r=null!==r?r:"")?(b=a,58===n.charCodeAt(a)?(i=":",a++):(i=null,l('":"')),null!==i&&null!==(o=de())?i=[i,o]:(i=null,a=b),null!==(i=null!==i?i:"")?(b=a,58===n.charCodeAt(a)?(o=":",a++):(o=null,l('":"')),null!==o&&null!==(s=de())?o=[o,s]:(o=null,a=b),null!==(o=null!==o?o:"")?(b=a,58===n.charCodeAt(a)?(s=":",a++):(s=null,l('":"')),null!==s&&null!==(c=de())?s=[s,c]:(s=null,a=b),null!==(s=null!==s?s:"")?(b=a,58===n.charCodeAt(a)?(c=":",a++):(c=null,l('":"')),null!==c&&null!==(u=de())?c=[c,u]:(c=null,a=b),null!==(c=null!==c?c:"")?("::"===n.substr(a,2)?(u="::",a+=2):(u=null,l('"::"')),null!==u?e=[e,t,r,i,o,s,c,u]:(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_)):(e=null,a=_))))))))))))))),null!==e&&(e=function(e){return Gn.host_type="IPv6",n.substring(a,e)}(g)),null===e&&(a=g),e}function de(){var e,t,n,r,i;return i=a,null!==(e=d())&&null!==(t=null!==(t=d())?t:"")&&null!==(n=null!==(n=d())?n:"")&&null!==(r=null!==(r=d())?r:"")?e=[e,t,n,r]:(e=null,a=i),e}function he(){var e,t,r,i;return i=a,null!==(e=de())?(58===n.charCodeAt(a)?(t=":",a++):(t=null,l('":"')),null!==t&&null!==(r=de())?e=[e,t,r]:(e=null,a=i)):(e=null,a=i),null===e&&(e=pe()),e}function pe(){var e,t,r,i,o,s,c,u,f;return u=a,f=a,null!==(e=me())?(46===n.charCodeAt(a)?(t=".",a++):(t=null,l('"."')),null!==t&&null!==(r=me())?(46===n.charCodeAt(a)?(i=".",a++):(i=null,l('"."')),null!==i&&null!==(o=me())?(46===n.charCodeAt(a)?(s=".",a++):(s=null,l('"."')),null!==s&&null!==(c=me())?e=[e,t,r,i,o,s,c]:(e=null,a=f)):(e=null,a=f)):(e=null,a=f)):(e=null,a=f),null!==e&&(e=function(e){return Gn.host_type="IPv4",n.substring(a,e)}(u)),null===e&&(a=u),e}function me(){var e,t,r,i;return i=a,"25"===n.substr(a,2)?(e="25",a+=2):(e=null,l('"25"')),null!==e?(/^[0-5]/.test(n.charAt(a))?(t=n.charAt(a),a++):(t=null,l("[0-5]")),null!==t?e=[e,t]:(e=null,a=i)):(e=null,a=i),null===e&&(i=a,50===n.charCodeAt(a)?(e="2",a++):(e=null,l('"2"')),null!==e?(/^[0-4]/.test(n.charAt(a))?(t=n.charAt(a),a++):(t=null,l("[0-4]")),null!==t&&null!==(r=u())?e=[e,t,r]:(e=null,a=i)):(e=null,a=i),null===e&&(i=a,49===n.charCodeAt(a)?(e="1",a++):(e=null,l('"1"')),null!==e&&null!==(t=u())&&null!==(r=u())?e=[e,t,r]:(e=null,a=i),null===e&&(i=a,/^[1-9]/.test(n.charAt(a))?(e=n.charAt(a),a++):(e=null,l("[1-9]")),null!==e&&null!==(t=u())?e=[e,t]:(e=null,a=i),null===e&&(e=u())))),e}function ge(){var e,t,n,r,i,o,s,l;return o=a,s=a,null!==(e=null!==(e=u())?e:"")&&null!==(t=null!==(t=u())?t:"")&&null!==(n=null!==(n=u())?n:"")&&null!==(r=null!==(r=u())?r:"")&&null!==(i=null!==(i=u())?i:"")?e=[e,t,n,r,i]:(e=null,a=s),null!==e&&(l=e,l=parseInt(l.join("")),Gn.port=l,e=l),null===e&&(a=o),e}function _e(){var e,t,r,i;for(e=[],i=a,59===n.charCodeAt(a)?(t=";",a++):(t=null,l('";"')),null!==t&&null!==(r=be())?t=[t,r]:(t=null,a=i);null!==t;)e.push(t),i=a,59===n.charCodeAt(a)?(t=";",a++):(t=null,l('";"')),null!==t&&null!==(r=be())?t=[t,r]:(t=null,a=i);return e}function be(){var e;return null===(e=ve())&&null===(e=ye())&&null===(e=we())&&null===(e=Ce())&&null===(e=Ae())&&null===(e=Se())&&(e=xe()),e}function ve(){var e,t,r,i,o;return r=a,i=a,"transport="===n.substr(a,10).toLowerCase()?(e=n.substr(a,10),a+=10):(e=null,l('"transport="')),null!==e?("udp"===n.substr(a,3).toLowerCase()?(t=n.substr(a,3),a+=3):(t=null,l('"udp"')),null===t&&("tcp"===n.substr(a,3).toLowerCase()?(t=n.substr(a,3),a+=3):(t=null,l('"tcp"')),null===t&&("sctp"===n.substr(a,4).toLowerCase()?(t=n.substr(a,4),a+=4):(t=null,l('"sctp"')),null===t&&("tls"===n.substr(a,3).toLowerCase()?(t=n.substr(a,3),a+=3):(t=null,l('"tls"')),null===t&&(t=I())))),null!==t?e=[e,t]:(e=null,a=i)):(e=null,a=i),null!==e&&(o=e[1],Gn.uri_params||(Gn.uri_params={}),e=void(Gn.uri_params.transport=o.toLowerCase())),null===e&&(a=r),e}function ye(){var e,t,r,i,o;return r=a,i=a,"user="===n.substr(a,5).toLowerCase()?(e=n.substr(a,5),a+=5):(e=null,l('"user="')),null!==e?("phone"===n.substr(a,5).toLowerCase()?(t=n.substr(a,5),a+=5):(t=null,l('"phone"')),null===t&&("ip"===n.substr(a,2).toLowerCase()?(t=n.substr(a,2),a+=2):(t=null,l('"ip"')),null===t&&(t=I())),null!==t?e=[e,t]:(e=null,a=i)):(e=null,a=i),null!==e&&(o=e[1],Gn.uri_params||(Gn.uri_params={}),e=void(Gn.uri_params.user=o.toLowerCase())),null===e&&(a=r),e}function we(){var e,t,r,i,o;return r=a,i=a,"method="===n.substr(a,7).toLowerCase()?(e=n.substr(a,7),a+=7):(e=null,l('"method="')),null!==e&&null!==(t=ct())?e=[e,t]:(e=null,a=i),null!==e&&(o=e[1],Gn.uri_params||(Gn.uri_params={}),e=void(Gn.uri_params.method=o)),null===e&&(a=r),e}function Ce(){var e,t,r,i,o;return r=a,i=a,"ttl="===n.substr(a,4).toLowerCase()?(e=n.substr(a,4),a+=4):(e=null,l('"ttl="')),null!==e&&null!==(t=An())?e=[e,t]:(e=null,a=i),null!==e&&(o=e[1],Gn.params||(Gn.params={}),e=void(Gn.params.ttl=o)),null===e&&(a=r),e}function Ae(){var e,t,r,i,o;return r=a,i=a,"maddr="===n.substr(a,6).toLowerCase()?(e=n.substr(a,6),a+=6):(e=null,l('"maddr="')),null!==e&&null!==(t=oe())?e=[e,t]:(e=null,a=i),null!==e&&(o=e[1],Gn.uri_params||(Gn.uri_params={}),e=void(Gn.uri_params.maddr=o)),null===e&&(a=r),e}function Se(){var e,t,r,i,o,s;return i=a,o=a,"lr"===n.substr(a,2).toLowerCase()?(e=n.substr(a,2),a+=2):(e=null,l('"lr"')),null!==e?(s=a,61===n.charCodeAt(a)?(t="=",a++):(t=null,l('"="')),null!==t&&null!==(r=I())?t=[t,r]:(t=null,a=s),null!==(t=null!==t?t:"")?e=[e,t]:(e=null,a=o)):(e=null,a=o),null!==e&&(Gn.uri_params||(Gn.uri_params={}),e=void(Gn.uri_params.lr=void 0)),null===e&&(a=i),e}function xe(){var e,t,r,i,o,s,c,u;return i=a,o=a,null!==(e=Te())?(s=a,61===n.charCodeAt(a)?(t="=",a++):(t=null,l('"="')),null!==t&&null!==(r=ke())?t=[t,r]:(t=null,a=s),null!==(t=null!==t?t:"")?e=[e,t]:(e=null,a=o)):(e=null,a=o),null!==e&&(c=e[0],u=e[1],Gn.uri_params||(Gn.uri_params={}),u=void 0===u?void 0:u[1],e=void(Gn.uri_params[c.toLowerCase()]=u)),null===e&&(a=i),e}function Te(){var e,t,n;if(n=a,null!==(t=Ee()))for(e=[];null!==t;)e.push(t),t=Ee();else e=null;return null!==e&&(e=e.join("")),null===e&&(a=n),e}function ke(){var e,t,n;if(n=a,null!==(t=Ee()))for(e=[];null!==t;)e.push(t),t=Ee();else e=null;return null!==e&&(e=e.join("")),null===e&&(a=n),e}function Ee(){var e;return null===(e=De())&&null===(e=y())&&(e=C()),e}function De(){var e;return 91===n.charCodeAt(a)?(e="[",a++):(e=null,l('"["')),null===e&&(93===n.charCodeAt(a)?(e="]",a++):(e=null,l('"]"')),null===e&&(47===n.charCodeAt(a)?(e="/",a++):(e=null,l('"/"')),null===e&&(58===n.charCodeAt(a)?(e=":",a++):(e=null,l('":"')),null===e&&(38===n.charCodeAt(a)?(e="&",a++):(e=null,l('"&"')),null===e&&(43===n.charCodeAt(a)?(e="+",a++):(e=null,l('"+"')),null===e&&(36===n.charCodeAt(a)?(e="$",a++):(e=null,l('"$"')))))))),e}function Ie(){var e,t,r,i,o,s,c;if(s=a,63===n.charCodeAt(a)?(e="?",a++):(e=null,l('"?"')),null!==e)if(null!==(t=Pe())){for(r=[],c=a,38===n.charCodeAt(a)?(i="&",a++):(i=null,l('"&"')),null!==i&&null!==(o=Pe())?i=[i,o]:(i=null,a=c);null!==i;)r.push(i),c=a,38===n.charCodeAt(a)?(i="&",a++):(i=null,l('"&"')),null!==i&&null!==(o=Pe())?i=[i,o]:(i=null,a=c);null!==r?e=[e,t,r]:(e=null,a=s)}else e=null,a=s;else e=null,a=s;return e}function Pe(){var e,t,r,i,o,s,c;return i=a,o=a,null!==(e=Me())?(61===n.charCodeAt(a)?(t="=",a++):(t=null,l('"="')),null!==t&&null!==(r=$e())?e=[e,t,r]:(e=null,a=o)):(e=null,a=o),null!==e&&(s=e[0],c=e[2],s=s.join("").toLowerCase(),c=c.join(""),Gn.uri_headers||(Gn.uri_headers={}),e=void(Gn.uri_headers[s]?Gn.uri_headers[s].push(c):Gn.uri_headers[s]=[c])),null===e&&(a=i),e}function Me(){var e,t;if(null===(t=Oe())&&null===(t=y())&&(t=C()),null!==t)for(e=[];null!==t;)e.push(t),null===(t=Oe())&&null===(t=y())&&(t=C());else e=null;return e}function $e(){var e,t;for(e=[],null===(t=Oe())&&null===(t=y())&&(t=C());null!==t;)e.push(t),null===(t=Oe())&&null===(t=y())&&(t=C());return e}function Oe(){var e;return 91===n.charCodeAt(a)?(e="[",a++):(e=null,l('"["')),null===e&&(93===n.charCodeAt(a)?(e="]",a++):(e=null,l('"]"')),null===e&&(47===n.charCodeAt(a)?(e="/",a++):(e=null,l('"/"')),null===e&&(63===n.charCodeAt(a)?(e="?",a++):(e=null,l('"?"')),null===e&&(58===n.charCodeAt(a)?(e=":",a++):(e=null,l('":"')),null===e&&(43===n.charCodeAt(a)?(e="+",a++):(e=null,l('"+"')),null===e&&(36===n.charCodeAt(a)?(e="$",a++):(e=null,l('"$"')))))))),e}function Re(){var e,t,n,r,i,o;return o=a,null!==(e=ct())&&null!==(t=g())&&null!==(n=Ne())&&null!==(r=g())&&null!==(i=Je())?e=[e,t,n,r,i]:(e=null,a=o),e}function Ne(){var e;return null===(e=X())&&(e=Le()),e}function Le(){var e,t,r,i;return i=a,null!==(e=Ye())?(58===n.charCodeAt(a)?(t=":",a++):(t=null,l('":"')),null!==t?(null===(r=Fe())&&(r=Be()),null!==r?e=[e,t,r]:(e=null,a=i)):(e=null,a=i)):(e=null,a=i),e}function Fe(){var e,t,r,i,o;return i=a,null===(e=Ge())&&(e=je()),null!==e?(o=a,63===n.charCodeAt(a)?(t="?",a++):(t=null,l('"?"')),null!==t&&null!==(r=Ze())?t=[t,r]:(t=null,a=o),null!==(t=null!==t?t:"")?e=[e,t]:(e=null,a=i)):(e=null,a=i),e}function Ge(){var e,t,r,i;return i=a,"//"===n.substr(a,2)?(e="//",a+=2):(e=null,l('"//"')),null!==e&&null!==(t=Ke())&&null!==(r=null!==(r=je())?r:"")?e=[e,t,r]:(e=null,a=i),e}function je(){var e,t,r;return r=a,47===n.charCodeAt(a)?(e="/",a++):(e=null,l('"/"')),null!==e&&null!==(t=We())?e=[e,t]:(e=null,a=r),e}function Be(){var e,t,n,r;if(r=a,null!==(e=He())){for(t=[],n=Ue();null!==n;)t.push(n),n=Ue();null!==t?e=[e,t]:(e=null,a=r)}else e=null,a=r;return e}function Ue(){var e;return null===(e=v())&&null===(e=y())&&(e=C()),e}function He(){var e;return null===(e=y())&&null===(e=C())&&(59===n.charCodeAt(a)?(e=";",a++):(e=null,l('";"')),null===e&&(63===n.charCodeAt(a)?(e="?",a++):(e=null,l('"?"')),null===e&&(58===n.charCodeAt(a)?(e=":",a++):(e=null,l('":"')),null===e&&(64===n.charCodeAt(a)?(e="@",a++):(e=null,l('"@"')),null===e&&(38===n.charCodeAt(a)?(e="&",a++):(e=null,l('"&"')),null===e&&(61===n.charCodeAt(a)?(e="=",a++):(e=null,l('"="')),null===e&&(43===n.charCodeAt(a)?(e="+",a++):(e=null,l('"+"')),null===e&&(36===n.charCodeAt(a)?(e="$",a++):(e=null,l('"$"')),null===e&&(44===n.charCodeAt(a)?(e=",",a++):(e=null,l('","'))))))))))),e}function We(){var e,t,r,i,o,s;if(o=a,null!==(e=qe())){for(t=[],s=a,47===n.charCodeAt(a)?(r="/",a++):(r=null,l('"/"')),null!==r&&null!==(i=qe())?r=[r,i]:(r=null,a=s);null!==r;)t.push(r),s=a,47===n.charCodeAt(a)?(r="/",a++):(r=null,l('"/"')),null!==r&&null!==(i=qe())?r=[r,i]:(r=null,a=s);null!==t?e=[e,t]:(e=null,a=o)}else e=null,a=o;return e}function qe(){var e,t,r,i,o,s;for(o=a,e=[],t=Ve();null!==t;)e.push(t),t=Ve();if(null!==e){for(t=[],s=a,59===n.charCodeAt(a)?(r=";",a++):(r=null,l('";"')),null!==r&&null!==(i=ze())?r=[r,i]:(r=null,a=s);null!==r;)t.push(r),s=a,59===n.charCodeAt(a)?(r=";",a++):(r=null,l('";"')),null!==r&&null!==(i=ze())?r=[r,i]:(r=null,a=s);null!==t?e=[e,t]:(e=null,a=o)}else e=null,a=o;return e}function ze(){var e,t;for(e=[],t=Ve();null!==t;)e.push(t),t=Ve();return e}function Ve(){var e;return null===(e=y())&&null===(e=C())&&(58===n.charCodeAt(a)?(e=":",a++):(e=null,l('":"')),null===e&&(64===n.charCodeAt(a)?(e="@",a++):(e=null,l('"@"')),null===e&&(38===n.charCodeAt(a)?(e="&",a++):(e=null,l('"&"')),null===e&&(61===n.charCodeAt(a)?(e="=",a++):(e=null,l('"="')),null===e&&(43===n.charCodeAt(a)?(e="+",a++):(e=null,l('"+"')),null===e&&(36===n.charCodeAt(a)?(e="$",a++):(e=null,l('"$"')),null===e&&(44===n.charCodeAt(a)?(e=",",a++):(e=null,l('","'))))))))),e}function Ye(){var e,t,r,i,o;if(i=a,o=a,null!==(e=f())){for(t=[],null===(r=f())&&null===(r=u())&&(43===n.charCodeAt(a)?(r="+",a++):(r=null,l('"+"')),null===r&&(45===n.charCodeAt(a)?(r="-",a++):(r=null,l('"-"')),null===r&&(46===n.charCodeAt(a)?(r=".",a++):(r=null,l('"."')))));null!==r;)t.push(r),null===(r=f())&&null===(r=u())&&(43===n.charCodeAt(a)?(r="+",a++):(r=null,l('"+"')),null===r&&(45===n.charCodeAt(a)?(r="-",a++):(r=null,l('"-"')),null===r&&(46===n.charCodeAt(a)?(r=".",a++):(r=null,l('"."')))));null!==t?e=[e,t]:(e=null,a=o)}else e=null,a=o;return null!==e&&(e=function(e){Gn.scheme=n.substring(a,e)}(i)),null===e&&(a=i),e}function Ke(){var e;return null===(e=Qe())&&(e=Xe()),e}function Qe(){var e,t,r,i;return r=a,i=a,null!==(e=te())?(64===n.charCodeAt(a)?(t="@",a++):(t=null,l('"@"')),null!==t?e=[e,t]:(e=null,a=i)):(e=null,a=i),null!==(e=null!==e?e:"")&&null!==(t=ae())?e=[e,t]:(e=null,a=r),e=null!==e?e:""}function Xe(){var e,t;if(null===(t=y())&&null===(t=C())&&(36===n.charCodeAt(a)?(t="$",a++):(t=null,l('"$"')),null===t&&(44===n.charCodeAt(a)?(t=",",a++):(t=null,l('","')),null===t&&(59===n.charCodeAt(a)?(t=";",a++):(t=null,l('";"')),null===t&&(58===n.charCodeAt(a)?(t=":",a++):(t=null,l('":"')),null===t&&(64===n.charCodeAt(a)?(t="@",a++):(t=null,l('"@"')),null===t&&(38===n.charCodeAt(a)?(t="&",a++):(t=null,l('"&"')),null===t&&(61===n.charCodeAt(a)?(t="=",a++):(t=null,l('"="')),null===t&&(43===n.charCodeAt(a)?(t="+",a++):(t=null,l('"+"')))))))))),null!==t)for(e=[];null!==t;)e.push(t),null===(t=y())&&null===(t=C())&&(36===n.charCodeAt(a)?(t="$",a++):(t=null,l('"$"')),null===t&&(44===n.charCodeAt(a)?(t=",",a++):(t=null,l('","')),null===t&&(59===n.charCodeAt(a)?(t=";",a++):(t=null,l('";"')),null===t&&(58===n.charCodeAt(a)?(t=":",a++):(t=null,l('":"')),null===t&&(64===n.charCodeAt(a)?(t="@",a++):(t=null,l('"@"')),null===t&&(38===n.charCodeAt(a)?(t="&",a++):(t=null,l('"&"')),null===t&&(61===n.charCodeAt(a)?(t="=",a++):(t=null,l('"="')),null===t&&(43===n.charCodeAt(a)?(t="+",a++):(t=null,l('"+"'))))))))));else e=null;return e}function Ze(){var e,t;for(e=[],t=Ue();null!==t;)e.push(t),t=Ue();return e}function Je(){var e,t,r,i,o,s,c,f;if(c=a,f=a,"sip"===n.substr(a,3).toLowerCase()?(e=n.substr(a,3),a+=3):(e=null,l('"SIP"')),null!==e)if(47===n.charCodeAt(a)?(t="/",a++):(t=null,l('"/"')),null!==t){if(null!==(i=u()))for(r=[];null!==i;)r.push(i),i=u();else r=null;if(null!==r)if(46===n.charCodeAt(a)?(i=".",a++):(i=null,l('"."')),null!==i){if(null!==(s=u()))for(o=[];null!==s;)o.push(s),s=u();else o=null;null!==o?e=[e,t,r,i,o]:(e=null,a=f)}else e=null,a=f;else e=null,a=f}else e=null,a=f;else e=null,a=f;return null!==e&&(e=function(e){Gn.sip_version=n.substring(a,e)}(c)),null===e&&(a=c),e}function et(){var e;return"INVITE"===n.substr(a,6)?(e="INVITE",a+=6):(e=null,l('"INVITE"')),e}function tt(){var e;return"ACK"===n.substr(a,3)?(e="ACK",a+=3):(e=null,l('"ACK"')),e}function nt(){var e;return"OPTIONS"===n.substr(a,7)?(e="OPTIONS",a+=7):(e=null,l('"OPTIONS"')),e}function rt(){var e;return"BYE"===n.substr(a,3)?(e="BYE",a+=3):(e=null,l('"BYE"')),e}function it(){var e;return"CANCEL"===n.substr(a,6)?(e="CANCEL",a+=6):(e=null,l('"CANCEL"')),e}function at(){var e;return"REGISTER"===n.substr(a,8)?(e="REGISTER",a+=8):(e=null,l('"REGISTER"')),e}function ot(){var e;return"SUBSCRIBE"===n.substr(a,9)?(e="SUBSCRIBE",a+=9):(e=null,l('"SUBSCRIBE"')),e}function st(){var e;return"NOTIFY"===n.substr(a,6)?(e="NOTIFY",a+=6):(e=null,l('"NOTIFY"')),e}function lt(){var e;return"REFER"===n.substr(a,5)?(e="REFER",a+=5):(e=null,l('"REFER"')),e}function ct(){var e,t;return t=a,null===(e=et())&&null===(e=tt())&&null===(e=nt())&&null===(e=rt())&&null===(e=it())&&null===(e=at())&&null===(e=ot())&&null===(e=st())&&null===(e=lt())&&(e=I()),null!==e&&(e=function(e){return Gn.method=n.substring(a,e),Gn.method}(t)),null===e&&(a=t),e}function ut(){var e,t,n,r,i,o;return o=a,null!==(e=Je())&&null!==(t=g())&&null!==(n=ft())&&null!==(r=g())&&null!==(i=ht())?e=[e,t,n,r,i]:(e=null,a=o),e}function ft(){var e,t,n;return t=a,null!==(e=dt())&&(n=e,e=void(Gn.status_code=parseInt(n.join("")))),null===e&&(a=t),e}function dt(){var e,t,n,r;return r=a,null!==(e=u())&&null!==(t=u())&&null!==(n=u())?e=[e,t,n]:(e=null,a=r),e}function ht(){var e,t,r;for(r=a,e=[],null===(t=v())&&null===(t=y())&&null===(t=C())&&null===(t=E())&&null===(t=D())&&null===(t=g())&&(t=_());null!==t;)e.push(t),null===(t=v())&&null===(t=y())&&null===(t=C())&&null===(t=E())&&null===(t=D())&&null===(t=g())&&(t=_());return null!==e&&(e=function(e){Gn.reason_phrase=n.substring(a,e)}(r)),null===e&&(a=r),e}function pt(){var e,t,n,r,i,o,s;if(i=a,o=a,null===(e=Q())&&(e=mt()),null!==e){for(t=[],s=a,null!==(n=B())&&null!==(r=_t())?n=[n,r]:(n=null,a=s);null!==n;)t.push(n),s=a,null!==(n=B())&&null!==(r=_t())?n=[n,r]:(n=null,a=s);null!==t?e=[e,t]:(e=null,a=o)}else e=null,a=o;return null!==e&&(e=function(e){var t;Gn.multi_header||(Gn.multi_header=[]);try{t=new Fn(Gn.uri,Gn.display_name,Gn.params),delete Gn.uri,delete Gn.display_name,delete Gn.params}catch(e){t=null}Gn.multi_header.push({possition:a,offset:e,parsed:t})}(i)),null===e&&(a=i),e}function mt(){var e,t,n,r,i;return i=a,null!==(e=null!==(e=gt())?e:"")&&null!==(t=G())&&null!==(n=X())&&null!==(r=F())?e=[e,t,n,r]:(e=null,a=i),e}function gt(){var e,t,r,i,o,s,l;if(o=a,s=a,null!==(e=I())){for(t=[],l=a,null!==(r=A())&&null!==(i=I())?r=[r,i]:(r=null,a=l);null!==r;)t.push(r),l=a,null!==(r=A())&&null!==(i=I())?r=[r,i]:(r=null,a=l);null!==t?e=[e,t]:(e=null,a=s)}else e=null,a=s;return null===e&&(e=z()),null!==e&&(e=function(e,t){'"'===(t=n.substring(a,e).trim())[0]&&(t=t.substring(1,t.length-1)),Gn.display_name=t}(o,e)),null===e&&(a=o),e}function _t(){var e;return null===(e=bt())&&null===(e=vt())&&(e=Ct()),e}function bt(){var e,t,r,i,o,s;return i=a,o=a,"q"===n.substr(a,1).toLowerCase()?(e=n.substr(a,1),a++):(e=null,l('"q"')),null!==e&&null!==(t=R())&&null!==(r=wt())?e=[e,t,r]:(e=null,a=o),null!==e&&(s=e[2],Gn.params||(Gn.params={}),e=void(Gn.params.q=s)),null===e&&(a=i),e}function vt(){var e,t,r,i,o,s;return i=a,o=a,"expires"===n.substr(a,7).toLowerCase()?(e=n.substr(a,7),a+=7):(e=null,l('"expires"')),null!==e&&null!==(t=R())&&null!==(r=yt())?e=[e,t,r]:(e=null,a=o),null!==e&&(s=e[2],Gn.params||(Gn.params={}),e=void(Gn.params.expires=s)),null===e&&(a=i),e}function yt(){var e,t,n;if(n=a,null!==(t=u()))for(e=[];null!==t;)e.push(t),t=u();else e=null;return null!==e&&(e=parseInt(e.join(""))),null===e&&(a=n),e}function wt(){var e,t,r,i,o,s,c,f;return s=a,c=a,48===n.charCodeAt(a)?(e="0",a++):(e=null,l('"0"')),null!==e?(f=a,46===n.charCodeAt(a)?(t=".",a++):(t=null,l('"."')),null!==t&&null!==(r=null!==(r=u())?r:"")&&null!==(i=null!==(i=u())?i:"")&&null!==(o=null!==(o=u())?o:"")?t=[t,r,i,o]:(t=null,a=f),null!==(t=null!==t?t:"")?e=[e,t]:(e=null,a=c)):(e=null,a=c),null!==e&&(e=function(e){return parseFloat(n.substring(a,e))}(s)),null===e&&(a=s),e}function Ct(){var e,t,n,r,i,o,s,l;return r=a,i=a,null!==(e=I())?(o=a,null!==(t=R())&&null!==(n=At())?t=[t,n]:(t=null,a=o),null!==(t=null!==t?t:"")?e=[e,t]:(e=null,a=i)):(e=null,a=i),null!==e&&(s=e[0],l=e[1],Gn.params||(Gn.params={}),l=void 0===l?void 0:l[1],e=void(Gn.params[s.toLowerCase()]=l)),null===e&&(a=r),e}function At(){var e;return null===(e=I())&&null===(e=oe())&&(e=z()),e}function St(){var e;return"render"===n.substr(a,6).toLowerCase()?(e=n.substr(a,6),a+=6):(e=null,l('"render"')),null===e&&("session"===n.substr(a,7).toLowerCase()?(e=n.substr(a,7),a+=7):(e=null,l('"session"')),null===e&&("icon"===n.substr(a,4).toLowerCase()?(e=n.substr(a,4),a+=4):(e=null,l('"icon"')),null===e&&("alert"===n.substr(a,5).toLowerCase()?(e=n.substr(a,5),a+=5):(e=null,l('"alert"')),null===e&&(e=I())))),e}function xt(){var e;return null===(e=Tt())&&(e=Ct()),e}function Tt(){var e,t,r,i;return i=a,"handling"===n.substr(a,8).toLowerCase()?(e=n.substr(a,8),a+=8):(e=null,l('"handling"')),null!==e&&null!==(t=R())?("optional"===n.substr(a,8).toLowerCase()?(r=n.substr(a,8),a+=8):(r=null,l('"optional"')),null===r&&("required"===n.substr(a,8).toLowerCase()?(r=n.substr(a,8),a+=8):(r=null,l('"required"')),null===r&&(r=I())),null!==r?e=[e,t,r]:(e=null,a=i)):(e=null,a=i),e}function kt(){var e,t,n,r,i,o,s,l;if(s=a,null!==(e=Et()))if(null!==(t=O()))if(null!==(n=$t())){for(r=[],l=a,null!==(i=B())&&null!==(o=Ot())?i=[i,o]:(i=null,a=l);null!==i;)r.push(i),l=a,null!==(i=B())&&null!==(o=Ot())?i=[i,o]:(i=null,a=l);null!==r?e=[e,t,n,r]:(e=null,a=s)}else e=null,a=s;else e=null,a=s;else e=null,a=s;return e}function Et(){var e;return null===(e=Dt())&&(e=It()),e}function Dt(){var e;return"text"===n.substr(a,4).toLowerCase()?(e=n.substr(a,4),a+=4):(e=null,l('"text"')),null===e&&("image"===n.substr(a,5).toLowerCase()?(e=n.substr(a,5),a+=5):(e=null,l('"image"')),null===e&&("audio"===n.substr(a,5).toLowerCase()?(e=n.substr(a,5),a+=5):(e=null,l('"audio"')),null===e&&("video"===n.substr(a,5).toLowerCase()?(e=n.substr(a,5),a+=5):(e=null,l('"video"')),null===e&&("application"===n.substr(a,11).toLowerCase()?(e=n.substr(a,11),a+=11):(e=null,l('"application"')),null===e&&(e=Pt()))))),e}function It(){var e;return"message"===n.substr(a,7).toLowerCase()?(e=n.substr(a,7),a+=7):(e=null,l('"message"')),null===e&&("multipart"===n.substr(a,9).toLowerCase()?(e=n.substr(a,9),a+=9):(e=null,l('"multipart"')),null===e&&(e=Pt())),e}function Pt(){var e;return null===(e=I())&&(e=Mt()),e}function Mt(){var e,t,r;return r=a,"x-"===n.substr(a,2).toLowerCase()?(e=n.substr(a,2),a+=2):(e=null,l('"x-"')),null!==e&&null!==(t=I())?e=[e,t]:(e=null,a=r),e}function $t(){var e;return null===(e=Pt())&&(e=I()),e}function Ot(){var e,t,n,r;return r=a,null!==(e=I())&&null!==(t=R())&&null!==(n=Rt())?e=[e,t,n]:(e=null,a=r),e}function Rt(){var e;return null===(e=I())&&(e=z()),e}function Nt(){var e,t,n,r;if(n=a,null!==(t=u()))for(e=[];null!==t;)e.push(t),t=u();else e=null;return null!==e&&(r=e,e=void(Gn.value=parseInt(r.join("")))),null===e&&(a=n),e}function Lt(){var e,t,r,i,o,s;if(o=a,null!==(e=P())){for(t=[],s=a,46===n.charCodeAt(a)?(r=".",a++):(r=null,l('"."')),null!==r&&null!==(i=P())?r=[r,i]:(r=null,a=s);null!==r;)t.push(r),s=a,46===n.charCodeAt(a)?(r=".",a++):(r=null,l('"."')),null!==r&&null!==(i=P())?r=[r,i]:(r=null,a=s);null!==t?e=[e,t]:(e=null,a=o)}else e=null,a=o;return e}function Ft(){var e;return null===(e=Gt())&&(e=Ct()),e}function Gt(){var e,t,r,i,o,s;return i=a,o=a,"tag"===n.substr(a,3).toLowerCase()?(e=n.substr(a,3),a+=3):(e=null,l('"tag"')),null!==e&&null!==(t=R())&&null!==(r=I())?e=[e,t,r]:(e=null,a=o),null!==e&&(s=e[2],e=void(Gn.tag=s)),null===e&&(a=i),e}function jt(){var e,t,r,i,o,s,c,u;if(c=a,"digest"===n.substr(a,6).toLowerCase()?(e=n.substr(a,6),a+=6):(e=null,l('"Digest"')),null!==e)if(null!==(t=A()))if(null!==(r=Ht())){for(i=[],u=a,null!==(o=j())&&null!==(s=Ht())?o=[o,s]:(o=null,a=u);null!==o;)i.push(o),u=a,null!==(o=j())&&null!==(s=Ht())?o=[o,s]:(o=null,a=u);null!==i?e=[e,t,r,i]:(e=null,a=c)}else e=null,a=c;else e=null,a=c;else e=null,a=c;return null===e&&(e=Bt()),e}function Bt(){var e,t,n,r,i,o,s,l;if(s=a,null!==(e=I()))if(null!==(t=A()))if(null!==(n=Ut())){for(r=[],l=a,null!==(i=j())&&null!==(o=Ut())?i=[i,o]:(i=null,a=l);null!==i;)r.push(i),l=a,null!==(i=j())&&null!==(o=Ut())?i=[i,o]:(i=null,a=l);null!==r?e=[e,t,n,r]:(e=null,a=s)}else e=null,a=s;else e=null,a=s;else e=null,a=s;return e}function Ut(){var e,t,n,r;return r=a,null!==(e=I())&&null!==(t=R())?(null===(n=I())&&(n=z()),null!==n?e=[e,t,n]:(e=null,a=r)):(e=null,a=r),e}function Ht(){var e;return null===(e=Wt())&&null===(e=zt())&&null===(e=Yt())&&null===(e=Qt())&&null===(e=Xt())&&null===(e=Zt())&&null===(e=Jt())&&(e=Ut()),e}function Wt(){var e,t,r,i;return i=a,"realm"===n.substr(a,5).toLowerCase()?(e=n.substr(a,5),a+=5):(e=null,l('"realm"')),null!==e&&null!==(t=R())&&null!==(r=qt())?e=[e,t,r]:(e=null,a=i),e}function qt(){var e,t,n;return t=a,null!==(e=V())&&(n=e,e=void(Gn.realm=n)),null===e&&(a=t),e}function zt(){var e,t,r,i,o,s,c,u,f;if(u=a,"domain"===n.substr(a,6).toLowerCase()?(e=n.substr(a,6),a+=6):(e=null,l('"domain"')),null!==e)if(null!==(t=R()))if(null!==(r=H()))if(null!==(i=Vt())){if(o=[],f=a,null!==(c=g()))for(s=[];null!==c;)s.push(c),c=g();else s=null;for(null!==s&&null!==(c=Vt())?s=[s,c]:(s=null,a=f);null!==s;){if(o.push(s),f=a,null!==(c=g()))for(s=[];null!==c;)s.push(c),c=g();else s=null;null!==s&&null!==(c=Vt())?s=[s,c]:(s=null,a=f)}null!==o&&null!==(s=W())?e=[e,t,r,i,o,s]:(e=null,a=u)}else e=null,a=u;else e=null,a=u;else e=null,a=u;else e=null,a=u;return e}function Vt(){var e;return null===(e=Le())&&(e=je()),e}function Yt(){var e,t,r,i;return i=a,"nonce"===n.substr(a,5).toLowerCase()?(e=n.substr(a,5),a+=5):(e=null,l('"nonce"')),null!==e&&null!==(t=R())&&null!==(r=Kt())?e=[e,t,r]:(e=null,a=i),e}function Kt(){var e,t,n;return t=a,null!==(e=V())&&(n=e,e=void(Gn.nonce=n)),null===e&&(a=t),e}function Qt(){var e,t,r,i,o,s;return i=a,o=a,"opaque"===n.substr(a,6).toLowerCase()?(e=n.substr(a,6),a+=6):(e=null,l('"opaque"')),null!==e&&null!==(t=R())&&null!==(r=V())?e=[e,t,r]:(e=null,a=o),null!==e&&(s=e[2],e=void(Gn.opaque=s)),null===e&&(a=i),e}function Xt(){var e,t,r,i,o;return i=a,"stale"===n.substr(a,5).toLowerCase()?(e=n.substr(a,5),a+=5):(e=null,l('"stale"')),null!==e&&null!==(t=R())?(o=a,"true"===n.substr(a,4).toLowerCase()?(r=n.substr(a,4),a+=4):(r=null,l('"true"')),null!==r&&(r=void(Gn.stale=!0)),null===r&&(a=o),null===r&&(o=a,"false"===n.substr(a,5).toLowerCase()?(r=n.substr(a,5),a+=5):(r=null,l('"false"')),null!==r&&(r=void(Gn.stale=!1)),null===r&&(a=o)),null!==r?e=[e,t,r]:(e=null,a=i)):(e=null,a=i),e}function Zt(){var e,t,r,i,o,s;return i=a,o=a,"algorithm"===n.substr(a,9).toLowerCase()?(e=n.substr(a,9),a+=9):(e=null,l('"algorithm"')),null!==e&&null!==(t=R())?("md5"===n.substr(a,3).toLowerCase()?(r=n.substr(a,3),a+=3):(r=null,l('"MD5"')),null===r&&("md5-sess"===n.substr(a,8).toLowerCase()?(r=n.substr(a,8),a+=8):(r=null,l('"MD5-sess"')),null===r&&(r=I())),null!==r?e=[e,t,r]:(e=null,a=o)):(e=null,a=o),null!==e&&(s=e[2],e=void(Gn.algorithm=s.toUpperCase())),null===e&&(a=i),e}function Jt(){var e,t,r,i,o,s,c,u,f,d;if(u=a,"qop"===n.substr(a,3).toLowerCase()?(e=n.substr(a,3),a+=3):(e=null,l('"qop"')),null!==e)if(null!==(t=R()))if(null!==(r=H())){if(f=a,null!==(i=en())){for(o=[],d=a,44===n.charCodeAt(a)?(s=",",a++):(s=null,l('","')),null!==s&&null!==(c=en())?s=[s,c]:(s=null,a=d);null!==s;)o.push(s),d=a,44===n.charCodeAt(a)?(s=",",a++):(s=null,l('","')),null!==s&&null!==(c=en())?s=[s,c]:(s=null,a=d);null!==o?i=[i,o]:(i=null,a=f)}else i=null,a=f;null!==i&&null!==(o=W())?e=[e,t,r,i,o]:(e=null,a=u)}else e=null,a=u;else e=null,a=u;else e=null,a=u;return e}function en(){var e,t,r;return t=a,"auth-int"===n.substr(a,8).toLowerCase()?(e=n.substr(a,8),a+=8):(e=null,l('"auth-int"')),null===e&&("auth"===n.substr(a,4).toLowerCase()?(e=n.substr(a,4),a+=4):(e=null,l('"auth"')),null===e&&(e=I())),null!==e&&(r=e,Gn.qop||(Gn.qop=[]),e=void Gn.qop.push(r.toLowerCase())),null===e&&(a=t),e}function tn(){var e,t,n,r,i,o,s;if(i=a,o=a,null!==(e=mt())){for(t=[],s=a,null!==(n=B())&&null!==(r=Ct())?n=[n,r]:(n=null,a=s);null!==n;)t.push(n),s=a,null!==(n=B())&&null!==(r=Ct())?n=[n,r]:(n=null,a=s);null!==t?e=[e,t]:(e=null,a=o)}else e=null,a=o;return null!==e&&(e=function(e){var t;Gn.multi_header||(Gn.multi_header=[]);try{t=new Fn(Gn.uri,Gn.display_name,Gn.params),delete Gn.uri,delete Gn.display_name,delete Gn.params}catch(e){t=null}Gn.multi_header.push({possition:a,offset:e,parsed:t})}(i)),null===e&&(a=i),e}function nn(){var e;return null===(e=rn())&&(e=Ct()),e}function rn(){var e,t,r,i,o,s,c;if(o=a,s=a,"cause"===n.substr(a,5).toLowerCase()?(e=n.substr(a,5),a+=5):(e=null,l('"cause"')),null!==e)if(null!==(t=R())){if(null!==(i=u()))for(r=[];null!==i;)r.push(i),i=u();else r=null;null!==r?e=[e,t,r]:(e=null,a=s)}else e=null,a=s;else e=null,a=s;return null!==e&&(c=e[2],e=void(Gn.cause=parseInt(c.join("")))),null===e&&(a=o),e}function an(){var e,t,n,r,i,o;if(i=a,null!==(e=mt())){for(t=[],o=a,null!==(n=B())&&null!==(r=Ct())?n=[n,r]:(n=null,a=o);null!==n;)t.push(n),o=a,null!==(n=B())&&null!==(r=Ct())?n=[n,r]:(n=null,a=o);null!==t?e=[e,t]:(e=null,a=i)}else e=null,a=i;return e}function on(){var e,t;return t=a,"active"===n.substr(a,6).toLowerCase()?(e=n.substr(a,6),a+=6):(e=null,l('"active"')),null===e&&("pending"===n.substr(a,7).toLowerCase()?(e=n.substr(a,7),a+=7):(e=null,l('"pending"')),null===e&&("terminated"===n.substr(a,10).toLowerCase()?(e=n.substr(a,10),a+=10):(e=null,l('"terminated"')),null===e&&(e=I()))),null!==e&&(e=function(e){Gn.state=n.substring(a,e)}(t)),null===e&&(a=t),e}function sn(){var e,t,r,i,o,s,c,u;return i=a,o=a,"reason"===n.substr(a,6).toLowerCase()?(e=n.substr(a,6),a+=6):(e=null,l('"reason"')),null!==e&&null!==(t=R())&&null!==(r=ln())?e=[e,t,r]:(e=null,a=o),null!==e&&(e=void(void 0!==(s=e[2])&&(Gn.reason=s))),null===e&&(a=i),null===e&&(i=a,o=a,"expires"===n.substr(a,7).toLowerCase()?(e=n.substr(a,7),a+=7):(e=null,l('"expires"')),null!==e&&null!==(t=R())&&null!==(r=yt())?e=[e,t,r]:(e=null,a=o),null!==e&&(e=void(void 0!==(u=e[2])&&(Gn.expires=u))),null===e&&(a=i),null===e&&(i=a,o=a,"retry_after"===n.substr(a,11).toLowerCase()?(e=n.substr(a,11),a+=11):(e=null,l('"retry_after"')),null!==e&&null!==(t=R())&&null!==(r=yt())?e=[e,t,r]:(e=null,a=o),null!==e&&(e=void(void 0!==(c=e[2])&&(Gn.retry_after=c))),null===e&&(a=i),null===e&&(e=Ct()))),e}function ln(){var e;return"deactivated"===n.substr(a,11).toLowerCase()?(e=n.substr(a,11),a+=11):(e=null,l('"deactivated"')),null===e&&("probation"===n.substr(a,9).toLowerCase()?(e=n.substr(a,9),a+=9):(e=null,l('"probation"')),null===e&&("rejected"===n.substr(a,8).toLowerCase()?(e=n.substr(a,8),a+=8):(e=null,l('"rejected"')),null===e&&("timeout"===n.substr(a,7).toLowerCase()?(e=n.substr(a,7),a+=7):(e=null,l('"timeout"')),null===e&&("giveup"===n.substr(a,6).toLowerCase()?(e=n.substr(a,6),a+=6):(e=null,l('"giveup"')),null===e&&("noresource"===n.substr(a,10).toLowerCase()?(e=n.substr(a,10),a+=10):(e=null,l('"noresource"')),null===e&&("invariant"===n.substr(a,9).toLowerCase()?(e=n.substr(a,9),a+=9):(e=null,l('"invariant"')),null===e&&(e=I()))))))),e}function cn(){var e;return null===(e=Gt())&&(e=Ct()),e}function un(){var e,t,n,r,i,o,s,l;if(s=a,null!==(e=_n()))if(null!==(t=A()))if(null!==(n=yn())){for(r=[],l=a,null!==(i=B())&&null!==(o=fn())?i=[i,o]:(i=null,a=l);null!==i;)r.push(i),l=a,null!==(i=B())&&null!==(o=fn())?i=[i,o]:(i=null,a=l);null!==r?e=[e,t,n,r]:(e=null,a=s)}else e=null,a=s;else e=null,a=s;else e=null,a=s;return e}function fn(){var e;return null===(e=dn())&&null===(e=hn())&&null===(e=pn())&&null===(e=mn())&&null===(e=gn())&&(e=Ct()),e}function dn(){var e,t,r,i,o,s;return i=a,o=a,"ttl"===n.substr(a,3).toLowerCase()?(e=n.substr(a,3),a+=3):(e=null,l('"ttl"')),null!==e&&null!==(t=R())&&null!==(r=An())?e=[e,t,r]:(e=null,a=o),null!==e&&(s=e[2],e=void(Gn.ttl=s)),null===e&&(a=i),e}function hn(){var e,t,r,i,o,s;return i=a,o=a,"maddr"===n.substr(a,5).toLowerCase()?(e=n.substr(a,5),a+=5):(e=null,l('"maddr"')),null!==e&&null!==(t=R())&&null!==(r=oe())?e=[e,t,r]:(e=null,a=o),null!==e&&(s=e[2],e=void(Gn.maddr=s)),null===e&&(a=i),e}function pn(){var e,t,r,i,o,s;return i=a,o=a,"received"===n.substr(a,8).toLowerCase()?(e=n.substr(a,8),a+=8):(e=null,l('"received"')),null!==e&&null!==(t=R())?(null===(r=pe())&&(r=fe()),null!==r?e=[e,t,r]:(e=null,a=o)):(e=null,a=o),null!==e&&(s=e[2],e=void(Gn.received=s)),null===e&&(a=i),e}function mn(){var e,t,r,i,o,s;return i=a,o=a,"branch"===n.substr(a,6).toLowerCase()?(e=n.substr(a,6),a+=6):(e=null,l('"branch"')),null!==e&&null!==(t=R())&&null!==(r=I())?e=[e,t,r]:(e=null,a=o),null!==e&&(s=e[2],e=void(Gn.branch=s)),null===e&&(a=i),e}function gn(){var e,t,r,i,o,s,c;if(o=a,s=a,"rport"===n.substr(a,5).toLowerCase()?(e=n.substr(a,5),a+=5):(e=null,l('"rport"')),null!==e){if(c=a,null!==(t=R())){for(r=[],i=u();null!==i;)r.push(i),i=u();null!==r?t=[t,r]:(t=null,a=c)}else t=null,a=c;null!==(t=null!==t?t:"")?e=[e,t]:(e=null,a=s)}else e=null,a=s;return null!==e&&(e=void("undefined"!=typeof response_port&&(Gn.rport=response_port.join("")))),null===e&&(a=o),e}function _n(){var e,t,n,r,i,o;return o=a,null!==(e=bn())&&null!==(t=O())&&null!==(n=I())&&null!==(r=O())&&null!==(i=vn())?e=[e,t,n,r,i]:(e=null,a=o),e}function bn(){var e,t,r;return t=a,"sip"===n.substr(a,3).toLowerCase()?(e=n.substr(a,3),a+=3):(e=null,l('"SIP"')),null===e&&(e=I()),null!==e&&(r=e,e=void(Gn.protocol=r)),null===e&&(a=t),e}function vn(){var e,t,r;return t=a,"udp"===n.substr(a,3).toLowerCase()?(e=n.substr(a,3),a+=3):(e=null,l('"UDP"')),null===e&&("tcp"===n.substr(a,3).toLowerCase()?(e=n.substr(a,3),a+=3):(e=null,l('"TCP"')),null===e&&("tls"===n.substr(a,3).toLowerCase()?(e=n.substr(a,3),a+=3):(e=null,l('"TLS"')),null===e&&("sctp"===n.substr(a,4).toLowerCase()?(e=n.substr(a,4),a+=4):(e=null,l('"SCTP"')),null===e&&(e=I())))),null!==e&&(r=e,e=void(Gn.transport=r)),null===e&&(a=t),e}function yn(){var e,t,n,r,i;return r=a,null!==(e=wn())?(i=a,null!==(t=U())&&null!==(n=Cn())?t=[t,n]:(t=null,a=i),null!==(t=null!==t?t:"")?e=[e,t]:(e=null,a=r)):(e=null,a=r),e}function wn(){var e,t;return t=a,null===(e=pe())&&null===(e=ue())&&(e=se()),null!==e&&(e=function(e){Gn.host=n.substring(a,e)}(t)),null===e&&(a=t),e}function Cn(){var e,t,n,r,i,o,s,l;return o=a,s=a,null!==(e=null!==(e=u())?e:"")&&null!==(t=null!==(t=u())?t:"")&&null!==(n=null!==(n=u())?n:"")&&null!==(r=null!==(r=u())?r:"")&&null!==(i=null!==(i=u())?i:"")?e=[e,t,n,r,i]:(e=null,a=s),null!==e&&(l=e,e=void(Gn.port=parseInt(l.join("")))),null===e&&(a=o),e}function An(){var e,t,n,r,i;return r=a,i=a,null!==(e=u())&&null!==(t=null!==(t=u())?t:"")&&null!==(n=null!==(n=u())?n:"")?e=[e,t,n]:(e=null,a=i),null!==e&&(e=parseInt(e.join(""))),null===e&&(a=r),e}function Sn(){var e,t,n;return t=a,null!==(e=yt())&&(n=e,e=void(Gn.expires=n)),null===e&&(a=t),e}function xn(){var e;return null===(e=Tn())&&(e=Ct()),e}function Tn(){var e,t,r,i,o,s;return i=a,o=a,"refresher"===n.substr(a,9).toLowerCase()?(e=n.substr(a,9),a+=9):(e=null,l('"refresher"')),null!==e&&null!==(t=R())?("uac"===n.substr(a,3).toLowerCase()?(r=n.substr(a,3),a+=3):(r=null,l('"uac"')),null===r&&("uas"===n.substr(a,3).toLowerCase()?(r=n.substr(a,3),a+=3):(r=null,l('"uas"'))),null!==r?e=[e,t,r]:(e=null,a=o)):(e=null,a=o),null!==e&&(s=e[2],e=void(Gn.refresher=s.toLowerCase())),null===e&&(a=i),e}function kn(){var e,t;for(e=[],null===(t=k())&&null===(t=D())&&(t=A());null!==t;)e.push(t),null===(t=k())&&null===(t=D())&&(t=A());return e}function En(){var e,t,r,i,o,s,c,u,f,d,h;return d=a,h=a,null!==(e=In())?(45===n.charCodeAt(a)?(t="-",a++):(t=null,l('"-"')),null!==t&&null!==(r=Dn())?(45===n.charCodeAt(a)?(i="-",a++):(i=null,l('"-"')),null!==i&&null!==(o=Dn())?(45===n.charCodeAt(a)?(s="-",a++):(s=null,l('"-"')),null!==s&&null!==(c=Dn())?(45===n.charCodeAt(a)?(u="-",a++):(u=null,l('"-"')),null!==u&&null!==(f=Pn())?e=[e,t,r,i,o,s,c,u,f]:(e=null,a=h)):(e=null,a=h)):(e=null,a=h)):(e=null,a=h)):(e=null,a=h),null!==e&&(e=function(e,t){Gn=n.substring(a+5,e)}(d,e[0])),null===e&&(a=d),e}function Dn(){var e,t,n,r,i;return i=a,null!==(e=d())&&null!==(t=d())&&null!==(n=d())&&null!==(r=d())?e=[e,t,n,r]:(e=null,a=i),e}function In(){var e,t,n;return n=a,null!==(e=Dn())&&null!==(t=Dn())?e=[e,t]:(e=null,a=n),e}function Pn(){var e,t,n,r;return r=a,null!==(e=Dn())&&null!==(t=Dn())&&null!==(n=Dn())?e=[e,t,n]:(e=null,a=r),e}function Mn(){var e,t,r,i,o,s;return i=a,o=a,null!==(e=M())?(s=a,64===n.charCodeAt(a)?(t="@",a++):(t=null,l('"@"')),null!==t&&null!==(r=M())?t=[t,r]:(t=null,a=s),null!==(t=null!==t?t:"")?e=[e,t]:(e=null,a=o)):(e=null,a=o),null!==e&&(e=function(e){Gn.call_id=n.substring(a,e)}(i)),null===e&&(a=i),e}function $n(){var e;return null===(e=On())&&null===(e=Rn())&&null===(e=Nn())&&(e=Ct()),e}function On(){var e,t,r,i,o,s;return i=a,o=a,"to-tag"===n.substr(a,6)?(e="to-tag",a+=6):(e=null,l('"to-tag"')),null!==e&&null!==(t=R())&&null!==(r=I())?e=[e,t,r]:(e=null,a=o),null!==e&&(s=e[2],e=void(Gn.to_tag=s)),null===e&&(a=i),e}function Rn(){var e,t,r,i,o,s;return i=a,o=a,"from-tag"===n.substr(a,8)?(e="from-tag",a+=8):(e=null,l('"from-tag"')),null!==e&&null!==(t=R())&&null!==(r=I())?e=[e,t,r]:(e=null,a=o),null!==e&&(s=e[2],e=void(Gn.from_tag=s)),null===e&&(a=i),e}function Nn(){var e,t;return t=a,"early-only"===n.substr(a,10)?(e="early-only",a+=10):(e=null,l('"early-only"')),null!==e&&(e=void(Gn.early_only=!0)),null===e&&(a=t),e}var Ln=e("./URI"),Fn=e("./NameAddrHeader"),Gn={};if(null===i[r]()||a!==n.length){var jn=Math.max(a,o),Bn=jn<n.length?n.charAt(jn):null,Un=function(){for(var e=1,t=1,r=!1,i=0;i<Math.max(a,o);i++){var s=n.charAt(i);"\n"===s?(r||e++,t=1,r=!1):"\r"===s||"\u2028"===s||"\u2029"===s?(e++,t=1,r=!0):(t++,r=!1)}return{line:e,column:t}}();return new this.SyntaxError(function(e){e.sort();for(var t=null,n=[],r=0;r<e.length;r++)e[r]!==t&&(n.push(e[r]),t=e[r]);return n}(s),Bn,jn,Un.line,Un.column),-1}return Gn},toSource:function(){return this._source},SyntaxError:function(e,n,r,i,a){this.name="SyntaxError",this.expected=e,this.found=n,this.message=function(e,n){var r;switch(e.length){case 0:r="end of input";break;case 1:r=e[0];break;default:r=e.slice(0,e.length-1).join(", ")+" or "+e[e.length-1]}return"Expected "+r+" but "+(n?t(n):"end of input")+" found."}(e,n),this.offset=r,this.line=i,this.column=a}};return n.SyntaxError.prototype=Error.prototype,n}()},{"./NameAddrHeader":10,"./URI":25}],8:[function(e,t,n){"use strict";var r=e("webrtc-adapter"),i=e("../package.json"),a=e("./Constants"),o=e("./Exceptions"),s=e("./Utils"),l=e("./UA"),c=e("./URI"),u=e("./NameAddrHeader"),f=e("./Grammar"),d=e("./WebSocketInterface");e("debug")("JsSIP")("version %s",i.version),t.exports={C:a,Exceptions:o,Utils:s,UA:l,URI:c,NameAddrHeader:u,WebSocketInterface:d,Grammar:f,debug:e("debug"),adapter:r,get name(){return i.title},get version(){return i.version}}},{"../package.json":51,"./Constants":2,"./Exceptions":6,"./Grammar":7,"./NameAddrHeader":10,"./UA":24,"./URI":25,"./Utils":26,"./WebSocketInterface":27,debug:29,"webrtc-adapter":40}],9:[function(e,t,n){"use strict";var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}();var i=e("events").EventEmitter,a=e("./Constants"),o=e("./SIPMessage"),s=e("./Utils"),l=e("./RequestSender"),c=e("./Exceptions"),u=e("debug")("JsSIP:Message");t.exports=function(e){function t(e){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);var n=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return n._ua=e,n._request=null,n._closed=!1,n._direction=null,n._local_identity=null,n._remote_identity=null,n._is_replied=!1,n._data={},n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),r(t,[{key:"send",value:function(e,t){var n=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=e;if(void 0===e||void 0===t)throw new TypeError("Not enough arguments");if(!(e=this._ua.normalizeTarget(e)))throw new TypeError("Invalid target: "+i);var c=s.cloneArray(r.extraHeaders),u=r.eventHandlers||{},f=r.contentType||"text/plain";for(var d in u)Object.prototype.hasOwnProperty.call(u,d)&&this.on(d,u[d]);c.push("Content-Type: "+f),this._request=new o.OutgoingRequest(a.MESSAGE,e,this._ua,null,c),t&&(this._request.body=t);var h=new l(this._ua,this._request,{onRequestTimeout:function(){n._onRequestTimeout()},onTransportError:function(){n._onTransportError()},onReceiveResponse:function(e){n._receiveResponse(e)}});this._newMessage("local",this._request),h.send()}},{key:"init_incoming",value:function(e){this._request=e,this._newMessage("remote",e),this._is_replied||(this._is_replied=!0,e.reply(200)),this._close()}},{key:"accept",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=s.cloneArray(e.extraHeaders),n=e.body;if("incoming"!==this._direction)throw new c.NotSupportedError('"accept" not supported for outgoing Message');if(this._is_replied)throw new Error("incoming Message already replied");this._is_replied=!0,this._request.reply(200,null,t,n)}},{key:"reject",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.status_code||480,n=e.reason_phrase,r=s.cloneArray(e.extraHeaders),i=e.body;if("incoming"!==this._direction)throw new c.NotSupportedError('"reject" not supported for outgoing Message');if(this._is_replied)throw new Error("incoming Message already replied");if(t<300||t>=700)throw new TypeError("Invalid status_code: "+t);this._is_replied=!0,this._request.reply(t,n,r,i)}},{key:"_receiveResponse",value:function(e){if(!this._closed)switch(!0){case/^1[0-9]{2}$/.test(e.status_code):break;case/^2[0-9]{2}$/.test(e.status_code):this._succeeded("remote",e);break;default:var t=s.sipErrorCause(e.status_code);this._failed("remote",e,t)}}},{key:"_onRequestTimeout",value:function(){this._closed||this._failed("system",null,a.causes.REQUEST_TIMEOUT)}},{key:"_onTransportError",value:function(){this._closed||this._failed("system",null,a.causes.CONNECTION_ERROR)}},{key:"_close",value:function(){this._closed=!0,this._ua.destroyMessage(this)}},{key:"_newMessage",value:function(e,t){"remote"===e?(this._direction="incoming",this._local_identity=t.to,this._remote_identity=t.from):"local"===e&&(this._direction="outgoing",this._local_identity=t.from,this._remote_identity=t.to),this._ua.newMessage(this,{originator:e,message:this,request:t})}},{key:"_failed",value:function(e,t,n){u("MESSAGE failed"),this._close(),u('emit "failed"'),this.emit("failed",{originator:e,response:t||null,cause:n})}},{key:"_succeeded",value:function(e,t){u("MESSAGE succeeded"),this._close(),u('emit "succeeded"'),this.emit("succeeded",{originator:e,response:t})}},{key:"direction",get:function(){return this._direction}},{key:"local_identity",get:function(){return this._local_identity}},{key:"remote_identity",get:function(){return this._remote_identity}}]),t}(i)},{"./Constants":2,"./Exceptions":6,"./RequestSender":18,"./SIPMessage":19,"./Utils":26,debug:29,events:31}],10:[function(e,t,n){"use strict";var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}();var i=e("./URI"),a=e("./Grammar");t.exports=function(){function e(t,n,r){if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),!(t&&t instanceof i))throw new TypeError('missing or invalid "uri" parameter');for(var a in this._uri=t,this._parameters={},this._display_name=n,r)Object.prototype.hasOwnProperty.call(r,a)&&this.setParam(a,r[a])}return r(e,null,[{key:"parse",value:function(e){return-1!==(e=a.parse(e,"Name_Addr_Header"))?e:void 0}}]),r(e,[{key:"setParam",value:function(e,t){e&&(this._parameters[e.toLowerCase()]=null==t?null:t.toString())}},{key:"getParam",value:function(e){if(e)return this._parameters[e.toLowerCase()]}},{key:"hasParam",value:function(e){if(e)return!!this._parameters.hasOwnProperty(e.toLowerCase())}},{key:"deleteParam",value:function(e){if(e=e.toLowerCase(),this._parameters.hasOwnProperty(e)){var t=this._parameters[e];return delete this._parameters[e],t}}},{key:"clearParams",value:function(){this._parameters={}}},{key:"clone",value:function(){return new e(this._uri.clone(),this._display_name,JSON.parse(JSON.stringify(this._parameters)))}},{key:"toString",value:function(){var e=this._display_name||0===this._display_name?'"'+this._display_name+'" ':"";for(var t in e+="<"+this._uri.toString()+">",this._parameters)Object.prototype.hasOwnProperty.call(this._parameters,t)&&(e+=";"+t,null!==this._parameters[t]&&(e+="="+this._parameters[t]));return e}},{key:"uri",get:function(){return this._uri}},{key:"display_name",get:function(){return this._display_name},set:function(e){this._display_name=0===e?"0":e}}]),e}()},{"./Grammar":7,"./URI":25}],11:[function(e,t,n){"use strict";var r=e("./Grammar"),i=e("./SIPMessage"),a=e("debug")("JsSIP:ERROR:Parser");function o(e,t){var n=t,r=0,i=0;if(e.substring(n,n+2).match(/(^\r\n)/))return-2;for(;0===r;){if(-1===(i=e.indexOf("\r\n",n)))return i;!e.substring(i+2,i+4).match(/(^\r\n)/)&&e.charAt(i+2).match(/(^\s+)/)?n=i+2:r=i}return r}function s(e,t,n,a){var o=void 0,s=t.indexOf(":",n),l=t.substring(n,s).trim(),c=t.substring(s+1,a).trim();switch(l.toLowerCase()){case"via":case"v":e.addHeader("via",c),1===e.getHeaders("via").length?(o=e.parseHeader("Via"))&&(e.via=o,e.via_branch=o.branch):o=0;break;case"from":case"f":e.setHeader("from",c),(o=e.parseHeader("from"))&&(e.from=o,e.from_tag=o.getParam("tag"));break;case"to":case"t":e.setHeader("to",c),(o=e.parseHeader("to"))&&(e.to=o,e.to_tag=o.getParam("tag"));break;case"record-route":if(-1===(o=r.parse(c,"Record_Route")))o=void 0;else{var u=!0,f=!1,d=void 0;try{for(var h,p=o[Symbol.iterator]();!(u=(h=p.next()).done);u=!0){var m=h.value;e.addHeader("record-route",c.substring(m.possition,m.offset)),e.headers["Record-Route"][e.getHeaders("record-route").length-1].parsed=m.parsed}}catch(e){f=!0,d=e}finally{try{!u&&p.return&&p.return()}finally{if(f)throw d}}}break;case"call-id":case"i":e.setHeader("call-id",c),(o=e.parseHeader("call-id"))&&(e.call_id=c);break;case"contact":case"m":if(-1===(o=r.parse(c,"Contact")))o=void 0;else{var g=!0,_=!1,b=void 0;try{for(var v,y=o[Symbol.iterator]();!(g=(v=y.next()).done);g=!0){var w=v.value;e.addHeader("contact",c.substring(w.possition,w.offset)),e.headers.Contact[e.getHeaders("contact").length-1].parsed=w.parsed}}catch(e){_=!0,b=e}finally{try{!g&&y.return&&y.return()}finally{if(_)throw b}}}break;case"content-length":case"l":e.setHeader("content-length",c),o=e.parseHeader("content-length");break;case"content-type":case"c":e.setHeader("content-type",c),o=e.parseHeader("content-type");break;case"cseq":e.setHeader("cseq",c),(o=e.parseHeader("cseq"))&&(e.cseq=o.value),e instanceof i.IncomingResponse&&(e.method=o.method);break;case"max-forwards":e.setHeader("max-forwards",c),o=e.parseHeader("max-forwards");break;case"www-authenticate":e.setHeader("www-authenticate",c),o=e.parseHeader("www-authenticate");break;case"proxy-authenticate":e.setHeader("proxy-authenticate",c),o=e.parseHeader("proxy-authenticate");break;case"session-expires":case"x":e.setHeader("session-expires",c),(o=e.parseHeader("session-expires"))&&(e.session_expires=o.expires,e.session_expires_refresher=o.refresher);break;case"refer-to":case"r":e.setHeader("refer-to",c),(o=e.parseHeader("refer-to"))&&(e.refer_to=o);break;case"replaces":e.setHeader("replaces",c),(o=e.parseHeader("replaces"))&&(e.replaces=o);break;case"event":case"o":e.setHeader("event",c),(o=e.parseHeader("event"))&&(e.event=o);break;default:e.addHeader(l,c),o=0}return void 0!==o||{error:'error parsing header "'+l+'"'}}a.log=console.warn.bind(console),n.parseMessage=function(e,t){var n=void 0,l=void 0,c=e.indexOf("\r\n");if(-1!==c){var u=e.substring(0,c),f=r.parse(u,"Request_Response");if(-1!==f){f.status_code?((n=new i.IncomingResponse).status_code=f.status_code,n.reason_phrase=f.reason_phrase):((n=new i.IncomingRequest(t)).method=f.method,n.ruri=f.uri),n.data=e;for(var d=c+2;;){if(-2===(c=o(e,d))){l=d+2;break}if(-1===c)return void a("parseMessage() | malformed message");if(!0!==(f=s(n,e,d,c)))return void a("parseMessage() |",f.error);d=c+2}if(n.hasHeader("content-length")){var h=n.getHeader("content-length");n.body=e.substr(l,h)}else n.body=e.substring(l);return n}a('parseMessage() | error parsing first line of SIP message: "'+u+'"')}else a("parseMessage() | no CRLF found, not a SIP message")}},{"./Grammar":7,"./SIPMessage":19,debug:29}],12:[function(e,t,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}();var a=e("events").EventEmitter,o=e("sdp-transform"),s=e("./Constants"),l=e("./Exceptions"),c=e("./Transactions"),u=e("./Utils"),f=e("./Timers"),d=e("./SIPMessage"),h=e("./Dialog"),p=e("./RequestSender"),m=e("./RTCSession/DTMF"),g=e("./RTCSession/Info"),_=e("./RTCSession/ReferNotifier"),b=e("./RTCSession/ReferSubscriber"),v=e("debug")("JsSIP:RTCSession"),y=e("debug")("JsSIP:ERROR:RTCSession");y.log=console.warn.bind(console);var w={STATUS_NULL:0,STATUS_INVITE_SENT:1,STATUS_1XX_RECEIVED:2,STATUS_INVITE_RECEIVED:3,STATUS_WAITING_FOR_ANSWER:4,STATUS_ANSWERED:5,STATUS_WAITING_FOR_ACK:6,STATUS_CANCELED:7,STATUS_TERMINATED:8,STATUS_CONFIRMED:9},C=["audio","video"];t.exports=function(e){function t(e){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),v("new");var n=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return n._id=null,n._ua=e,n._status=w.STATUS_NULL,n._dialog=null,n._earlyDialogs={},n._contact=null,n._from_tag=null,n._to_tag=null,n._connection=null,n._connectionPromiseQueue=Promise.resolve(),n._request=null,n._is_canceled=!1,n._cancel_reason="",n._is_confirmed=!1,n._late_sdp=!1,n._rtcOfferConstraints=null,n._rtcAnswerConstraints=null,n._localMediaStream=null,n._localMediaStreamLocallyGenerated=!1,n._rtcReady=!0,n._timers={ackTimer:null,expiresTimer:null,invite2xxTimer:null,userNoAnswerTimer:null},n._direction=null,n._local_identity=null,n._remote_identity=null,n._start_time=null,n._end_time=null,n._tones=null,n._audioMuted=!1,n._videoMuted=!1,n._localHold=!1,n._remoteHold=!1,n._sessionTimers={enabled:n._ua.configuration.session_timers,refreshMethod:n._ua.configuration.session_timers_refresh_method,defaultExpires:s.SESSION_EXPIRES,currentExpires:null,running:!1,refresher:!1,timer:null},n._referSubscribers={},n._data={},n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),i(t,null,[{key:"C",get:function(){return w}}]),i(t,[{key:"isInProgress",value:function(){switch(this._status){case w.STATUS_NULL:case w.STATUS_INVITE_SENT:case w.STATUS_1XX_RECEIVED:case w.STATUS_INVITE_RECEIVED:case w.STATUS_WAITING_FOR_ANSWER:return!0;default:return!1}}},{key:"isEstablished",value:function(){switch(this._status){case w.STATUS_ANSWERED:case w.STATUS_WAITING_FOR_ACK:case w.STATUS_CONFIRMED:return!0;default:return!1}}},{key:"isEnded",value:function(){switch(this._status){case w.STATUS_CANCELED:case w.STATUS_TERMINATED:return!0;default:return!1}}},{key:"isMuted",value:function(){return{audio:this._audioMuted,video:this._videoMuted}}},{key:"isOnHold",value:function(){return{local:this._localHold,remote:this._remoteHold}}},{key:"connect",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments[2];v("connect()");var r=e,i=t.eventHandlers||{},a=u.cloneArray(t.extraHeaders),o=t.mediaConstraints||{audio:!0,video:!0},c=t.mediaStream||null,f=t.pcConfig||{iceServers:[]},h=t.rtcConstraints||null,p=t.rtcOfferConstraints||null;if(this._rtcOfferConstraints=p,this._rtcAnswerConstraints=t.rtcAnswerConstraints||null,this._data=t.data||this._data,void 0===e)throw new TypeError("Not enough arguments");if(this._status!==w.STATUS_NULL)throw new l.InvalidStateError(this._status);if(!window.RTCPeerConnection)throw new l.NotSupportedError("WebRTC not supported");if(!(e=this._ua.normalizeTarget(e)))throw new TypeError("Invalid target: "+r);for(var m in this._sessionTimers.enabled&&u.isDecimal(t.sessionTimersExpires)&&(t.sessionTimersExpires>=s.MIN_SESSION_EXPIRES?this._sessionTimers.defaultExpires=t.sessionTimersExpires:this._sessionTimers.defaultExpires=s.SESSION_EXPIRES),i)Object.prototype.hasOwnProperty.call(i,m)&&this.on(m,i[m]);this._from_tag=u.newTag();var g=t.anonymous||!1,_={from_tag:this._from_tag};this._contact=this._ua.contact.toString({anonymous:g,outbound:!0}),g&&(_.from_display_name="Anonymous",_.from_uri="sip:[email-masked]",a.push("P-Preferred-Identity: "+this._ua.configuration.uri.toString()),a.push("Privacy: id")),a.push("Contact: "+this._contact),a.push("Content-Type: application/sdp"),this._sessionTimers.enabled&&a.push("Session-Expires: "+this._sessionTimers.defaultExpires),this._request=new d.InitialOutgoingInviteRequest(e,this._ua,_,a),this._id=this._request.call_id+this._from_tag,this._createRTCConnection(f,h),this._direction="outgoing",this._local_identity=this._request.from,this._remote_identity=this._request.to,n&&n(this),this._newRTCSession("local",this._request),this._sendInitialRequest(o,p,c)}},{key:"init_incoming",value:function(e,t){var n=this;v("init_incoming()");var r=void 0,i=e.getHeader("Content-Type");e.body&&"application/sdp"!==i?e.reply(415):(this._status=w.STATUS_INVITE_RECEIVED,this._from_tag=e.from_tag,this._id=e.call_id+this._from_tag,this._request=e,this._contact=this._ua.contact.toString(),e.hasHeader("expires")&&(r=1e3*e.getHeader("expires")),e.to_tag=u.newTag(),this._createDialog(e,"UAS",!0)?(e.body?this._late_sdp=!1:this._late_sdp=!0,this._status=w.STATUS_WAITING_FOR_ANSWER,this._timers.userNoAnswerTimer=setTimeout((function(){e.reply(408),n._failed("local",null,s.causes.NO_ANSWER)}),this._ua.configuration.no_answer_timeout),r&&(this._timers.expiresTimer=setTimeout((function(){n._status===w.STATUS_WAITING_FOR_ANSWER&&(e.reply(487),n._failed("system",null,s.causes.EXPIRES))}),r)),this._direction="incoming",this._local_identity=e.to,this._remote_identity=e.from,t&&t(this),this._newRTCSession("remote",e),this._status!==w.STATUS_TERMINATED&&(e.reply(180,null,["Contact: "+this._contact]),this._progress("local",null))):e.reply(500,"Missing Contact header field"))}},{key:"answer",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};v("answer()");var n=this._request,r=u.cloneArray(t.extraHeaders),i=t.mediaConstraints||{},a=t.mediaStream||null,o=t.pcConfig||{iceServers:[]},c=t.rtcConstraints||null,f=t.rtcAnswerConstraints||null,d=void 0,h=!1,p=!1,m=!1,g=!1;if(this._rtcAnswerConstraints=f,this._rtcOfferConstraints=t.rtcOfferConstraints||null,this._data=t.data||this._data,"incoming"!==this._direction)throw new l.NotSupportedError('"answer" not supported for outgoing RTCSession');if(this._status!==w.STATUS_WAITING_FOR_ANSWER)throw new l.InvalidStateError(this._status);if(this._sessionTimers.enabled&&u.isDecimal(t.sessionTimersExpires)&&(t.sessionTimersExpires>=s.MIN_SESSION_EXPIRES?this._sessionTimers.defaultExpires=t.sessionTimersExpires:this._sessionTimers.defaultExpires=s.SESSION_EXPIRES),this._status=w.STATUS_ANSWERED,this._createDialog(n,"UAS")){clearTimeout(this._timers.userNoAnswerTimer),r.unshift("Contact: "+this._contact);var _=n.parseSDP();Array.isArray(_.media)||(_.media=[_.media]);var b=!0,C=!1,A=void 0;try{for(var S,x=_.media[Symbol.iterator]();!(b=(S=x.next()).done);b=!0){var T=S.value;"audio"===T.type&&(h=!0,T.direction&&"sendrecv"!==T.direction||(m=!0)),"video"===T.type&&(p=!0,T.direction&&"sendrecv"!==T.direction||(g=!0))}}catch(e){C=!0,A=e}finally{try{!b&&x.return&&x.return()}finally{if(C)throw A}}if(a&&!1===i.audio){d=a.getAudioTracks();var k=!0,E=!1,D=void 0;try{for(var I,P=d[Symbol.iterator]();!(k=(I=P.next()).done);k=!0){var M=I.value;a.removeTrack(M)}}catch(e){E=!0,D=e}finally{try{!k&&P.return&&P.return()}finally{if(E)throw D}}}if(a&&!1===i.video){d=a.getVideoTracks();var $=!0,O=!1,R=void 0;try{for(var N,L=d[Symbol.iterator]();!($=(N=L.next()).done);$=!0){var F=N.value;a.removeTrack(F)}}catch(e){O=!0,R=e}finally{try{!$&&L.return&&L.return()}finally{if(O)throw R}}}a||void 0!==i.audio||(i.audio=m),a||void 0!==i.video||(i.video=g),a||h||(i.audio=!1),a||p||(i.video=!1),this._createRTCConnection(o,c),Promise.resolve().then((function(){return a||(i.audio||i.video?(e._localMediaStreamLocallyGenerated=!0,navigator.mediaDevices.getUserMedia(i).catch((function(t){if(e._status===w.STATUS_TERMINATED)throw new Error("terminated");throw n.reply(480),e._failed("local",null,s.causes.USER_DENIED_MEDIA_ACCESS),y('emit "getusermediafailed" [error:%o]',t),e.emit("getusermediafailed",t),new Error("getUserMedia() failed")}))):void 0)})).then((function(t){if(e._status===w.STATUS_TERMINATED)throw new Error("terminated");e._localMediaStream=t,t&&e._connection.addStream(t)})).then((function(){if(!e._late_sdp){var t={originator:"remote",type:"offer",sdp:n.body};v('emit "sdp"'),e.emit("sdp",t);var r=new RTCSessionDescription({type:"offer",sdp:t.sdp});return e._connectionPromiseQueue=e._connectionPromiseQueue.then((function(){return e._connection.setRemoteDescription(r)})).catch((function(t){throw n.reply(488),e._failed("system",null,s.causes.WEBRTC_ERROR),y('emit "peerconnection:setremotedescriptionfailed" [error:%o]',t),e.emit("peerconnection:setremotedescriptionfailed",t),new Error("peerconnection.setRemoteDescription() failed")})),e._connectionPromiseQueue}})).then((function(){if(e._status===w.STATUS_TERMINATED)throw new Error("terminated");return e._connecting(n),e._late_sdp?e._createLocalDescription("offer",e._rtcOfferConstraints).catch((function(){throw n.reply(500),new Error("_createLocalDescription() failed")})):e._createLocalDescription("answer",f).catch((function(){throw n.reply(500),new Error("_createLocalDescription() failed")}))})).then((function(t){if(e._status===w.STATUS_TERMINATED)throw new Error("terminated");e._handleSessionTimersInIncomingRequest(n,r),n.reply(200,null,r,t,(function(){e._status=w.STATUS_WAITING_FOR_ACK,e._setInvite2xxTimer(n,t),e._setACKTimer(),e._accepted("local")}),(function(){e._failed("system",null,s.causes.CONNECTION_ERROR)}))})).catch((function(t){e._status!==w.STATUS_TERMINATED&&y(t)}))}else n.reply(500,"Error creating dialog")}},{key:"terminate",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};v("terminate()");var n=t.cause||s.causes.BYE,r=u.cloneArray(t.extraHeaders),i=t.body,a=void 0,o=t.status_code,f=t.reason_phrase;if(this._status===w.STATUS_TERMINATED)throw new l.InvalidStateError(this._status);switch(this._status){case w.STATUS_NULL:case w.STATUS_INVITE_SENT:case w.STATUS_1XX_RECEIVED:if(v("canceling session"),o&&(o<200||o>=700))throw new TypeError("Invalid status_code: "+o);o&&(a="SIP ;cause="+o+' ;text="'+(f=f||s.REASON_PHRASE[o]||"")+'"'),this._status===w.STATUS_NULL||this._status===w.STATUS_INVITE_SENT?(this._is_canceled=!0,this._cancel_reason=a):this._status===w.STATUS_1XX_RECEIVED&&this._request.cancel(a),this._status=w.STATUS_CANCELED,this._failed("local",null,s.causes.CANCELED);break;case w.STATUS_WAITING_FOR_ANSWER:case w.STATUS_ANSWERED:if(v("rejecting session"),(o=o||480)<300||o>=700)throw new TypeError("Invalid status_code: "+o);this._request.reply(o,f,r,i),this._failed("local",null,s.causes.REJECTED);break;case w.STATUS_WAITING_FOR_ACK:case w.STATUS_CONFIRMED:if(v("terminating session"),f=t.reason_phrase||s.REASON_PHRASE[o]||"",o&&(o<200||o>=700))throw new TypeError("Invalid status_code: "+o);if(o&&r.push("Reason: SIP ;cause="+o+'; text="'+f+'"'),this._status===w.STATUS_WAITING_FOR_ACK&&"incoming"===this._direction&&this._request.server_transaction.state!==c.C.STATUS_TERMINATED){var d=this._dialog;this.receiveRequest=function(t){t.method===s.ACK&&(e.sendRequest(s.BYE,{extraHeaders:r,body:i}),d.terminate())},this._request.server_transaction.on("stateChanged",(function(){e._request.server_transaction.state===c.C.STATUS_TERMINATED&&(e.sendRequest(s.BYE,{extraHeaders:r,body:i}),d.terminate())})),this._ended("local",null,n),this._dialog=d,this._ua.newDialog(d)}else this.sendRequest(s.BYE,{extraHeaders:r,body:i}),this._ended("local",null,n)}}},{key:"sendDTMF",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};v("sendDTMF() | tones: %s",e);var n=0,r=t.duration||null,i=t.interToneGap||null;if(void 0===e)throw new TypeError("Not enough arguments");if(this._status!==w.STATUS_CONFIRMED&&this._status!==w.STATUS_WAITING_FOR_ACK)throw new l.InvalidStateError(this._status);if("number"==typeof e&&(e=e.toString()),!e||"string"!=typeof e||!e.match(/^[0-9A-DR#*,]+$/i))throw new TypeError("Invalid tones: "+e);if(r&&!u.isDecimal(r))throw new TypeError("Invalid tone duration: "+r);if(r?r<m.C.MIN_DURATION?(v('"duration" value is lower than the minimum allowed, setting it to '+m.C.MIN_DURATION+" milliseconds"),r=m.C.MIN_DURATION):r>m.C.MAX_DURATION?(v('"duration" value is greater than the maximum allowed, setting it to '+m.C.MAX_DURATION+" milliseconds"),r=m.C.MAX_DURATION):r=Math.abs(r):r=m.C.DEFAULT_DURATION,t.duration=r,i&&!u.isDecimal(i))throw new TypeError("Invalid interToneGap: "+i);function a(){var e=this,o=void 0;if(this._status===w.STATUS_TERMINATED||!this._tones||n>=this._tones.length)this._tones=null;else{var s=this._tones[n];if(n+=1,","===s)o=2e3;else{var l=new m(this);t.eventHandlers={onFailed:function(){e._tones=null}},l.send(s,t),o=r+i}setTimeout(a.bind(this),o)}}i?i<m.C.MIN_INTER_TONE_GAP?(v('"interToneGap" value is lower than the minimum allowed, setting it to '+m.C.MIN_INTER_TONE_GAP+" milliseconds"),i=m.C.MIN_INTER_TONE_GAP):i=Math.abs(i):i=m.C.DEFAULT_INTER_TONE_GAP,this._tones?this._tones+=e:(this._tones=e,a.call(this))}},{key:"sendInfo",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(v("sendInfo()"),this._status!==w.STATUS_CONFIRMED&&this._status!==w.STATUS_WAITING_FOR_ACK)throw new l.InvalidStateError(this._status);var r=new g(this);r.send(e,t,n)}},{key:"mute",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{audio:!0,video:!1};v("mute()");var t=!1,n=!1;!1===this._audioMuted&&e.audio&&(t=!0,this._audioMuted=!0,this._toogleMuteAudio(!0)),!1===this._videoMuted&&e.video&&(n=!0,this._videoMuted=!0,this._toogleMuteVideo(!0)),!0!==t&&!0!==n||this._onmute({audio:t,video:n})}},{key:"unmute",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{audio:!0,video:!0};v("unmute()");var t=!1,n=!1;!0===this._audioMuted&&e.audio&&(t=!0,this._audioMuted=!1,!1===this._localHold&&this._toogleMuteAudio(!1)),!0===this._videoMuted&&e.video&&(n=!0,this._videoMuted=!1,!1===this._localHold&&this._toogleMuteVideo(!1)),!0!==t&&!0!==n||this._onunmute({audio:t,video:n})}},{key:"hold",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=arguments[1];if(v("hold()"),this._status!==w.STATUS_WAITING_FOR_ACK&&this._status!==w.STATUS_CONFIRMED)return!1;if(!0===this._localHold)return!1;if(!this._isReadyToReOffer())return!1;this._localHold=!0,this._onhold("local");var r={succeeded:function(){n&&n()},failed:function(){e.terminate({cause:s.causes.WEBRTC_ERROR,status_code:500,reason_phrase:"Hold Failed"})}};return t.useUpdate?this._sendUpdate({sdpOffer:!0,eventHandlers:r,extraHeaders:t.extraHeaders}):this._sendReinvite({eventHandlers:r,extraHeaders:t.extraHeaders}),!0}},{key:"unhold",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=arguments[1];if(v("unhold()"),this._status!==w.STATUS_WAITING_FOR_ACK&&this._status!==w.STATUS_CONFIRMED)return!1;if(!1===this._localHold)return!1;if(!this._isReadyToReOffer())return!1;this._localHold=!1,this._onunhold("local");var r={succeeded:function(){n&&n()},failed:function(){e.terminate({cause:s.causes.WEBRTC_ERROR,status_code:500,reason_phrase:"Unhold Failed"})}};return t.useUpdate?this._sendUpdate({sdpOffer:!0,eventHandlers:r,extraHeaders:t.extraHeaders}):this._sendReinvite({eventHandlers:r,extraHeaders:t.extraHeaders}),!0}},{key:"renegotiate",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=arguments[1];v("renegotiate()");var r=t.rtcOfferConstraints||null;if(this._status!==w.STATUS_WAITING_FOR_ACK&&this._status!==w.STATUS_CONFIRMED)return!1;if(!this._isReadyToReOffer())return!1;var i={succeeded:function(){n&&n()},failed:function(){e.terminate({cause:s.causes.WEBRTC_ERROR,status_code:500,reason_phrase:"Media Renegotiation Failed"})}};return this._setLocalMediaStatus(),t.useUpdate?this._sendUpdate({sdpOffer:!0,eventHandlers:i,rtcOfferConstraints:r,extraHeaders:t.extraHeaders}):this._sendReinvite({eventHandlers:i,rtcOfferConstraints:r,extraHeaders:t.extraHeaders}),!0}},{key:"refer",value:function(e,t){var n=this;v("refer()");var r=e;if(this._status!==w.STATUS_WAITING_FOR_ACK&&this._status!==w.STATUS_CONFIRMED)return!1;if(!(e=this._ua.normalizeTarget(e)))throw new TypeError("Invalid target: "+r);var i=new b(this);i.sendRefer(e,t);var a=i.id;return this._referSubscribers[a]=i,i.on("requestFailed",(function(){delete n._referSubscribers[a]})),i.on("accepted",(function(){delete n._referSubscribers[a]})),i.on("failed",(function(){delete n._referSubscribers[a]})),i}},{key:"sendRequest",value:function(e,t){return v("sendRequest()"),this._dialog.sendRequest(e,t)}},{key:"receiveRequest",value:function(e){var t=this;if(v("receiveRequest()"),e.method===s.CANCEL)this._status!==w.STATUS_WAITING_FOR_ANSWER&&this._status!==w.STATUS_ANSWERED||(this._status=w.STATUS_CANCELED,this._request.reply(487),this._failed("remote",e,s.causes.CANCELED));else switch(e.method){case s.ACK:if(this._status!==w.STATUS_WAITING_FOR_ACK)return;if(this._status=w.STATUS_CONFIRMED,clearTimeout(this._timers.ackTimer),clearTimeout(this._timers.invite2xxTimer),this._late_sdp){if(!e.body){this.terminate({cause:s.causes.MISSING_SDP,status_code:400});break}var n={originator:"remote",type:"answer",sdp:e.body};v('emit "sdp"'),this.emit("sdp",n);var r=new RTCSessionDescription({type:"answer",sdp:n.sdp});this._connectionPromiseQueue=this._connectionPromiseQueue.then((function(){return t._connection.setRemoteDescription(r)})).then((function(){t._is_confirmed||t._confirmed("remote",e)})).catch((function(e){t.terminate({cause:s.causes.BAD_MEDIA_DESCRIPTION,status_code:488}),y('emit "peerconnection:setremotedescriptionfailed" [error:%o]',e),t.emit("peerconnection:setremotedescriptionfailed",e)}))}else this._is_confirmed||this._confirmed("remote",e);break;case s.BYE:this._status===w.STATUS_CONFIRMED?(e.reply(200),this._ended("remote",e,s.causes.BYE)):this._status===w.STATUS_INVITE_RECEIVED?(e.reply(200),this._request.reply(487,"BYE Received"),this._ended("remote",e,s.causes.BYE)):e.reply(403,"Wrong Status");break;case s.INVITE:this._status===w.STATUS_CONFIRMED?e.hasHeader("replaces")?this._receiveReplaces(e):this._receiveReinvite(e):e.reply(403,"Wrong Status");break;case s.INFO:if(this._status===w.STATUS_1XX_RECEIVED||this._status===w.STATUS_WAITING_FOR_ANSWER||this._status===w.STATUS_ANSWERED||this._status===w.STATUS_WAITING_FOR_ACK||this._status===w.STATUS_CONFIRMED){var i=e.getHeader("content-type");i&&i.match(/^application\/dtmf-relay/i)?new m(this).init_incoming(e):void 0!==i?new g(this).init_incoming(e):e.reply(415)}else e.reply(403,"Wrong Status");break;case s.UPDATE:this._status===w.STATUS_CONFIRMED?this._receiveUpdate(e):e.reply(403,"Wrong Status");break;case s.REFER:this._status===w.STATUS_CONFIRMED?this._receiveRefer(e):e.reply(403,"Wrong Status");break;case s.NOTIFY:this._status===w.STATUS_CONFIRMED?this._receiveNotify(e):e.reply(403,"Wrong Status");break;default:e.reply(501)}}},{key:"onTransportError",value:function(){y("onTransportError()"),this._status!==w.STATUS_TERMINATED&&this.terminate({status_code:500,reason_phrase:s.causes.CONNECTION_ERROR,cause:s.causes.CONNECTION_ERROR})}},{key:"onRequestTimeout",value:function(){y("onRequestTimeout()"),this._status!==w.STATUS_TERMINATED&&this.terminate({status_code:408,reason_phrase:s.causes.REQUEST_TIMEOUT,cause:s.causes.REQUEST_TIMEOUT})}},{key:"onDialogError",value:function(){y("onDialogError()"),this._status!==w.STATUS_TERMINATED&&this.terminate({status_code:500,reason_phrase:s.causes.DIALOG_ERROR,cause:s.causes.DIALOG_ERROR})}},{key:"newDTMF",value:function(e){v("newDTMF()"),this.emit("newDTMF",e)}},{key:"newInfo",value:function(e){v("newInfo()"),this.emit("newInfo",e)}},{key:"_isReadyToReOffer",value:function(){return this._rtcReady?this._dialog?!0!==this._dialog.uac_pending_reply&&!0!==this._dialog.uas_pending_reply||(v("_isReadyToReOffer() | there is another INVITE/UPDATE transaction in progress"),!1):(v("_isReadyToReOffer() | session not established yet"),!1):(v("_isReadyToReOffer() | internal WebRTC status not ready"),!1)}},{key:"_close",value:function(){if(v("close()"),this._status!==w.STATUS_TERMINATED){if(this._status=w.STATUS_TERMINATED,this._connection)try{this._connection.close()}catch(e){y("close() | error closing the RTCPeerConnection: %o",e)}for(var e in this._localMediaStream&&this._localMediaStreamLocallyGenerated&&(v("close() | closing local MediaStream"),u.closeMediaStream(this._localMediaStream)),this._timers)Object.prototype.hasOwnProperty.call(this._timers,e)&&clearTimeout(this._timers[e]);for(var t in clearTimeout(this._sessionTimers.timer),this._dialog&&(this._dialog.terminate(),delete this._dialog),this._earlyDialogs)Object.prototype.hasOwnProperty.call(this._earlyDialogs,t)&&(this._earlyDialogs[t].terminate(),delete this._earlyDialogs[t]);for(var n in this._referSubscribers)Object.prototype.hasOwnProperty.call(this._referSubscribers,n)&&delete this._referSubscribers[n];this._ua.destroyRTCSession(this)}}},{key:"_setInvite2xxTimer",value:function(e,t){var n=f.T1;this._timers.invite2xxTimer=setTimeout(function r(){this._status===w.STATUS_WAITING_FOR_ACK&&(e.reply(200,null,["Contact: "+this._contact],t),n<f.T2&&(n*=2)>f.T2&&(n=f.T2),this._timers.invite2xxTimer=setTimeout(r.bind(this),n))}.bind(this),n)}},{key:"_setACKTimer",value:function(){var e=this;this._timers.ackTimer=setTimeout((function(){e._status===w.STATUS_WAITING_FOR_ACK&&(v("no ACK received, terminating the session"),clearTimeout(e._timers.invite2xxTimer),e.sendRequest(s.BYE),e._ended("remote",null,s.causes.NO_ACK))}),f.TIMER_H)}},{key:"_createRTCConnection",value:function(e,t){var n=this;this._connection=new RTCPeerConnection(e,t),this._connection.addEventListener("iceconnectionstatechange",(function(){"failed"===n._connection.iceConnectionState&&n.terminate({cause:s.causes.RTP_TIMEOUT,status_code:408,reason_phrase:s.causes.RTP_TIMEOUT})})),v('emit "peerconnection"'),this.emit("peerconnection",{peerconnection:this._connection})}},{key:"_createLocalDescription",value:function(e,t){var n=this;if(v("createLocalDescription()"),"offer"!==e&&"answer"!==e)throw new Error('createLocalDescription() | invalid type "'+e+'"');var r=this._connection;return this._rtcReady=!1,Promise.resolve().then((function(){return"offer"===e?r.createOffer(t).catch((function(e){return y('emit "peerconnection:createofferfailed" [error:%o]',e),n.emit("peerconnection:createofferfailed",e),Promise.reject(e)})):r.createAnswer(t).catch((function(e){return y('emit "peerconnection:createanswerfailed" [error:%o]',e),n.emit("peerconnection:createanswerfailed",e),Promise.reject(e)}))})).then((function(e){return r.setLocalDescription(e).catch((function(e){return n._rtcReady=!0,y('emit "peerconnection:setlocaldescriptionfailed" [error:%o]',e),n.emit("peerconnection:setlocaldescriptionfailed",e),Promise.reject(e)}))})).then((function(){if("complete"===r.iceGatheringState){n._rtcReady=!0;var t={originator:"local",type:e,sdp:r.localDescription.sdp};return v('emit "sdp"'),n.emit("sdp",t),Promise.resolve(t.sdp)}return new Promise((function(t){var i=!1,a=void 0,o=function(){r.removeEventListener("icecandidate",a),i=!0,n._rtcReady=!0;var o={originator:"local",type:e,sdp:r.localDescription.sdp};v('emit "sdp"'),n.emit("sdp",o),t(o.sdp)};r.addEventListener("icecandidate",a=function(e){var t=e.candidate;t?n.emit("icecandidate",{candidate:t,ready:o}):i||o()})}))}))}},{key:"_createDialog",value:function(e,t,n){var r="UAS"===t?e.to_tag:e.from_tag,i="UAS"===t?e.from_tag:e.to_tag,a=e.call_id+r+i,o=this._earlyDialogs[a];if(n)return!!o||((o=new h(this,e,t,h.C.STATUS_EARLY)).error?(v(o.error),this._failed("remote",e,s.causes.INTERNAL_ERROR),!1):(this._earlyDialogs[a]=o,!0));if(this._from_tag=e.from_tag,this._to_tag=e.to_tag,o)return o.update(e,t),this._dialog=o,delete this._earlyDialogs[a],!0;var l=new h(this,e,t);return l.error?(v(l.error),this._failed("remote",e,s.causes.INTERNAL_ERROR),!1):(this._dialog=l,!0)}},{key:"_receiveReinvite",value:function(e){var t=this;v("receiveReinvite()");var n=e.getHeader("Content-Type"),r={request:e,callback:void 0,reject:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};i=!0;var n=t.status_code||403,r=t.reason_phrase||"",a=u.cloneArray(t.extraHeaders);if(this._status!==w.STATUS_CONFIRMED)return!1;if(n<300||n>=700)throw new TypeError("Invalid status_code: "+n);e.reply(n,r,a)}.bind(this)},i=!1;if(this.emit("reinvite",r),!i){if(this._late_sdp=!1,!e.body)return this._late_sdp=!0,void(this._connectionPromiseQueue=this._connectionPromiseQueue.then((function(){return t._createLocalDescription("offer",t._rtcOfferConstraints)})).then((function(e){a.call(t,e)})).catch((function(){e.reply(500)})));if("application/sdp"!==n)return v("invalid Content-Type"),void e.reply(415);this._processInDialogSdpOffer(e).then((function(e){t._status!==w.STATUS_TERMINATED&&a.call(t,e)})).catch((function(e){y(e)}))}function a(t){var n=this,i=["Contact: "+this._contact];this._handleSessionTimersInIncomingRequest(e,i),this._late_sdp&&(t=this._mangleOffer(t)),e.reply(200,null,i,t,(function(){n._status=w.STATUS_WAITING_FOR_ACK,n._setInvite2xxTimer(e,t),n._setACKTimer()})),"function"==typeof r.callback&&r.callback()}}},{key:"_receiveUpdate",value:function(e){var t=this;v("receiveUpdate()");var n=e.getHeader("Content-Type"),r={request:e,callback:void 0,reject:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};i=!0;var n=t.status_code||403,r=t.reason_phrase||"",a=u.cloneArray(t.extraHeaders);if(this._status!==w.STATUS_CONFIRMED)return!1;if(n<300||n>=700)throw new TypeError("Invalid status_code: "+n);e.reply(n,r,a)}.bind(this)},i=!1;if(this.emit("update",r),!i)if(e.body){if("application/sdp"!==n)return v("invalid Content-Type"),void e.reply(415);this._processInDialogSdpOffer(e).then((function(e){t._status!==w.STATUS_TERMINATED&&a.call(t,e)})).catch((function(e){y(e)}))}else a.call(this,null);function a(t){var n=["Contact: "+this._contact];this._handleSessionTimersInIncomingRequest(e,n),e.reply(200,null,n,t),"function"==typeof r.callback&&r.callback()}}},{key:"_processInDialogSdpOffer",value:function(e){var t=this;v("_processInDialogSdpOffer()");var n=e.parseSDP(),r=!1,i=!0,a=!1,o=void 0;try{for(var s,l=n.media[Symbol.iterator]();!(i=(s=l.next()).done);i=!0){var c=s.value;if(-1!==C.indexOf(c.type)){var u=c.direction||n.direction||"sendrecv";if("sendonly"!==u&&"inactive"!==u){r=!1;break}r=!0}}}catch(e){a=!0,o=e}finally{try{!i&&l.return&&l.return()}finally{if(a)throw o}}var f={originator:"remote",type:"offer",sdp:e.body};v('emit "sdp"'),this.emit("sdp",f);var d=new RTCSessionDescription({type:"offer",sdp:f.sdp});return this._connectionPromiseQueue=this._connectionPromiseQueue.then((function(){if(t._status===w.STATUS_TERMINATED)throw new Error("terminated");return t._connection.setRemoteDescription(d).catch((function(n){throw e.reply(488),y('emit "peerconnection:setremotedescriptionfailed" [error:%o]',n),t.emit("peerconnection:setremotedescriptionfailed",n),new Error("peerconnection.setRemoteDescription() failed")}))})).then((function(){if(t._status===w.STATUS_TERMINATED)throw new Error("terminated");!0===t._remoteHold&&!1===r?(t._remoteHold=!1,t._onunhold("remote")):!1===t._remoteHold&&!0===r&&(t._remoteHold=!0,t._onhold("remote"))})).then((function(){if(t._status===w.STATUS_TERMINATED)throw new Error("terminated");return t._createLocalDescription("answer",t._rtcAnswerConstraints).catch((function(){throw e.reply(500),new Error("_createLocalDescription() failed")}))})),this._connectionPromiseQueue}},{key:"_receiveRefer",value:function(e){var n=this;if(v("receiveRefer()"),void 0===r(e.refer_to))return v("no Refer-To header field present in REFER"),void e.reply(400);if(e.refer_to.uri.scheme!==s.SIP)return v("Refer-To header field points to a non-SIP URI scheme"),void e.reply(416);e.reply(202);var i=new _(this,e.cseq);function a(n){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(n="function"==typeof n?n:null,this._status!==w.STATUS_WAITING_FOR_ACK&&this._status!==w.STATUS_CONFIRMED)return!1;var a=new t(this._ua);if(a.on("progress",(function(e){var t=e.response;i.notify(t.status_code,t.reason_phrase)})),a.on("accepted",(function(e){var t=e.response;i.notify(t.status_code,t.reason_phrase)})),a.on("failed",(function(e){var t=e.message,n=e.cause;t?i.notify(t.status_code,t.reason_phrase):i.notify(487,n)})),e.refer_to.uri.hasHeader("replaces")){var o=decodeURIComponent(e.refer_to.uri.getHeader("replaces"));r.extraHeaders=u.cloneArray(r.extraHeaders),r.extraHeaders.push("Replaces: "+o)}a.connect(e.refer_to.uri.toAor(),r,n)}function o(){i.notify(603)}v('emit "refer"'),this.emit("refer",{request:e,accept:function(e,t){a.call(n,e,t)},reject:function(){o.call(n)}})}},{key:"_receiveNotify",value:function(e){switch(v("receiveNotify()"),void 0===r(e.event)&&e.reply(400),e.event.event){case"refer":var t=void 0,n=void 0;if(e.event.params&&e.event.params.id)t=e.event.params.id,n=this._referSubscribers[t];else{if(1!==Object.keys(this._referSubscribers).length)return void e.reply(400,"Missing event id parameter");n=this._referSubscribers[Object.keys(this._referSubscribers)[0]]}if(!n)return void e.reply(481,"Subscription does not exist");n.receiveNotify(e),e.reply(200);break;default:e.reply(489)}}},{key:"_receiveReplaces",value:function(e){var n=this;function r(n){var r=this;if(this._status!==w.STATUS_WAITING_FOR_ACK&&this._status!==w.STATUS_CONFIRMED)return!1;var i=new t(this._ua);i.on("confirmed",(function(){r.terminate()})),i.init_incoming(e,n)}function i(){v("Replaced INVITE rejected by the user"),e.reply(486)}v("receiveReplaces()"),this.emit("replaces",{request:e,accept:function(e){r.call(n,e)},reject:function(){i.call(n)}})}},{key:"_sendInitialRequest",value:function(e,t,n){var r=this,i=new p(this._ua,this._request,{onRequestTimeout:function(){r.onRequestTimeout()},onTransportError:function(){r.onTransportError()},onAuthenticated:function(e){r._request=e},onReceiveResponse:function(e){r._receiveInviteResponse(e)}});Promise.resolve().then((function(){return n||(e.audio||e.video?(r._localMediaStreamLocallyGenerated=!0,navigator.mediaDevices.getUserMedia(e).catch((function(e){if(r._status===w.STATUS_TERMINATED)throw new Error("terminated");throw r._failed("local",null,s.causes.USER_DENIED_MEDIA_ACCESS),y('emit "getusermediafailed" [error:%o]',e),r.emit("getusermediafailed"),e}))):void 0)})).then((function(e){if(r._status===w.STATUS_TERMINATED)throw new Error("terminated");return r._localMediaStream=e,e&&r._connection.addStream(e),r._connecting(r._request),r._createLocalDescription("offer",t).catch((function(e){throw r._failed("local",null,s.causes.WEBRTC_ERROR),e}))})).then((function(e){if(r._is_canceled||r._status===w.STATUS_TERMINATED)throw new Error("terminated");r._request.body=e,r._status=w.STATUS_INVITE_SENT,v('emit "sending" [request:%o]',r._request),r.emit("sending",{request:r._request}),i.send()})).catch((function(e){r._status!==w.STATUS_TERMINATED&&y(e)}))}},{key:"_receiveInviteResponse",value:function(e){var t=this;if(v("receiveInviteResponse()"),this._dialog&&e.status_code>=200&&e.status_code<=299){if(this._dialog.id.call_id===e.call_id&&this._dialog.id.local_tag===e.from_tag&&this._dialog.id.remote_tag===e.to_tag)return void this.sendRequest(s.ACK);var n=new h(this,e,"UAC");return void 0!==n.error?void v(n.error):(this.sendRequest(s.ACK),void this.sendRequest(s.BYE))}if(this._is_canceled)e.status_code>=100&&e.status_code<200?this._request.cancel(this._cancel_reason):e.status_code>=200&&e.status_code<299&&this._acceptAndTerminate(e);else if(this._status===w.STATUS_INVITE_SENT||this._status===w.STATUS_1XX_RECEIVED)switch(!0){case/^100$/.test(e.status_code):this._status=w.STATUS_1XX_RECEIVED;break;case/^1[0-9]{2}$/.test(e.status_code):if(!e.to_tag){v("1xx response received without to tag");break}if(e.hasHeader("contact")&&!this._createDialog(e,"UAC",!0))break;if(this._status=w.STATUS_1XX_RECEIVED,this._progress("remote",e),!e.body)break;var r={originator:"remote",type:"answer",sdp:e.body};v('emit "sdp"'),this.emit("sdp",r);var i=new RTCSessionDescription({type:"answer",sdp:r.sdp});this._connectionPromiseQueue=this._connectionPromiseQueue.then((function(){return t._connection.setRemoteDescription(i)})).catch((function(e){y('emit "peerconnection:setremotedescriptionfailed" [error:%o]',e),t.emit("peerconnection:setremotedescriptionfailed",e)}));break;case/^2[0-9]{2}$/.test(e.status_code):if(this._status=w.STATUS_CONFIRMED,!e.body){this._acceptAndTerminate(e,400,s.causes.MISSING_SDP),this._failed("remote",e,s.causes.BAD_MEDIA_DESCRIPTION);break}if(!this._createDialog(e,"UAC"))break;var a={originator:"remote",type:"answer",sdp:e.body};v('emit "sdp"'),this.emit("sdp",a);var o=new RTCSessionDescription({type:"answer",sdp:a.sdp});this._connectionPromiseQueue=this._connectionPromiseQueue.then((function(){if("stable"===t._connection.signalingState)return t._connection.createOffer().then((function(e){return t._connection.setLocalDescription(e)})).catch((function(n){t._acceptAndTerminate(e,500,n.toString()),t._failed("local",e,s.causes.WEBRTC_ERROR)}))})).then((function(){t._connection.setRemoteDescription(o).then((function(){t._handleSessionTimersInIncomingResponse(e),t._accepted("remote",e),t.sendRequest(s.ACK),t._confirmed("local",null)})).catch((function(n){t._acceptAndTerminate(e,488,"Not Acceptable Here"),t._failed("remote",e,s.causes.BAD_MEDIA_DESCRIPTION),y('emit "peerconnection:setremotedescriptionfailed" [error:%o]',n),t.emit("peerconnection:setremotedescriptionfailed",n)}))}));break;default:var l=u.sipErrorCause(e.status_code);this._failed("remote",e,l)}}},{key:"_sendReinvite",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};v("sendReinvite()");var n=u.cloneArray(t.extraHeaders),r=t.eventHandlers||{},i=t.rtcOfferConstraints||this._rtcOfferConstraints||null,a=!1;function o(e){var t=this;if(this._status!==w.STATUS_TERMINATED&&(this.sendRequest(s.ACK),!a))if(this._handleSessionTimersInIncomingResponse(e),e.body)if("application/sdp"===e.getHeader("Content-Type")){var n={originator:"remote",type:"answer",sdp:e.body};v('emit "sdp"'),this.emit("sdp",n);var i=new RTCSessionDescription({type:"answer",sdp:n.sdp});this._connectionPromiseQueue=this._connectionPromiseQueue.then((function(){return t._connection.setRemoteDescription(i)})).then((function(){r.succeeded&&r.succeeded(e)})).catch((function(e){l.call(t),y('emit "peerconnection:setremotedescriptionfailed" [error:%o]',e),t.emit("peerconnection:setremotedescriptionfailed",e)}))}else l.call(this);else l.call(this)}function l(e){r.failed&&r.failed(e)}n.push("Contact: "+this._contact),n.push("Content-Type: application/sdp"),this._sessionTimers.running&&n.push("Session-Expires: "+this._sessionTimers.currentExpires+";refresher="+(this._sessionTimers.refresher?"uac":"uas")),this._connectionPromiseQueue=this._connectionPromiseQueue.then((function(){return e._createLocalDescription("offer",i)})).then((function(t){t=e._mangleOffer(t),e.sendRequest(s.INVITE,{extraHeaders:n,body:t,eventHandlers:{onSuccessResponse:function(t){o.call(e,t),a=!0},onErrorResponse:function(t){l.call(e,t)},onTransportError:function(){e.onTransportError()},onRequestTimeout:function(){e.onRequestTimeout()},onDialogError:function(){e.onDialogError()}}})})).catch((function(){l()}))}},{key:"_sendUpdate",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};v("sendUpdate()");var n=u.cloneArray(t.extraHeaders),r=t.eventHandlers||{},i=t.rtcOfferConstraints||this._rtcOfferConstraints||null,a=t.sdpOffer||!1,o=!1;function l(e){var t=this;if(this._status!==w.STATUS_TERMINATED&&!o)if(this._handleSessionTimersInIncomingResponse(e),a){if(!e.body)return void c.call(this);if("application/sdp"!==e.getHeader("Content-Type"))return void c.call(this);var n={originator:"remote",type:"answer",sdp:e.body};v('emit "sdp"'),this.emit("sdp",n);var i=new RTCSessionDescription({type:"answer",sdp:n.sdp});this._connectionPromiseQueue=this._connectionPromiseQueue.then((function(){return t._connection.setRemoteDescription(i)})).then((function(){r.succeeded&&r.succeeded(e)})).catch((function(e){c.call(t),y('emit "peerconnection:setremotedescriptionfailed" [error:%o]',e),t.emit("peerconnection:setremotedescriptionfailed",e)}))}else r.succeeded&&r.succeeded(e)}function c(e){r.failed&&r.failed(e)}n.push("Contact: "+this._contact),this._sessionTimers.running&&n.push("Session-Expires: "+this._sessionTimers.currentExpires+";refresher="+(this._sessionTimers.refresher?"uac":"uas")),a?(n.push("Content-Type: application/sdp"),this._connectionPromiseQueue=this._connectionPromiseQueue.then((function(){return e._createLocalDescription("offer",i)})).then((function(t){t=e._mangleOffer(t),e.sendRequest(s.UPDATE,{extraHeaders:n,body:t,eventHandlers:{onSuccessResponse:function(t){l.call(e,t),o=!0},onErrorResponse:function(t){c.call(e,t)},onTransportError:function(){e.onTransportError()},onRequestTimeout:function(){e.onRequestTimeout()},onDialogError:function(){e.onDialogError()}}})})).catch((function(){c.call(e)}))):this.sendRequest(s.UPDATE,{extraHeaders:n,eventHandlers:{onSuccessResponse:function(t){l.call(e,t)},onErrorResponse:function(t){c.call(e,t)},onTransportError:function(){e.onTransportError()},onRequestTimeout:function(){e.onRequestTimeout()},onDialogError:function(){e.onDialogError()}}})}},{key:"_acceptAndTerminate",value:function(e,t,n){v("acceptAndTerminate()");var r=[];t&&(n=n||s.REASON_PHRASE[t]||"",r.push("Reason: SIP ;cause="+t+'; text="'+n+'"')),(this._dialog||this._createDialog(e,"UAC"))&&(this.sendRequest(s.ACK),this.sendRequest(s.BYE,{extraHeaders:r})),this._status=w.STATUS_TERMINATED}},{key:"_mangleOffer",value:function(e){if(!this._localHold&&!this._remoteHold)return e;if(e=o.parse(e),this._localHold&&!this._remoteHold){v("mangleOffer() | me on hold, mangling offer");var t=!0,n=!1,r=void 0;try{for(var i,a=e.media[Symbol.iterator]();!(t=(i=a.next()).done);t=!0){var s=i.value;-1!==C.indexOf(s.type)&&(s.direction?"sendrecv"===s.direction?s.direction="sendonly":"recvonly"===s.direction&&(s.direction="inactive"):s.direction="sendonly")}}catch(e){n=!0,r=e}finally{try{!t&&a.return&&a.return()}finally{if(n)throw r}}}else if(this._localHold&&this._remoteHold){v("mangleOffer() | both on hold, mangling offer");var l=!0,c=!1,u=void 0;try{for(var f,d=e.media[Symbol.iterator]();!(l=(f=d.next()).done);l=!0){var h=f.value;-1!==C.indexOf(h.type)&&(h.direction="inactive")}}catch(e){c=!0,u=e}finally{try{!l&&d.return&&d.return()}finally{if(c)throw u}}}else if(this._remoteHold){v("mangleOffer() | remote on hold, mangling offer");var p=!0,m=!1,g=void 0;try{for(var _,b=e.media[Symbol.iterator]();!(p=(_=b.next()).done);p=!0){var y=_.value;-1!==C.indexOf(y.type)&&(y.direction?"sendrecv"===y.direction?y.direction="recvonly":"recvonly"===y.direction&&(y.direction="inactive"):y.direction="recvonly")}}catch(e){m=!0,g=e}finally{try{!p&&b.return&&b.return()}finally{if(m)throw g}}}return o.write(e)}},{key:"_setLocalMediaStatus",value:function(){var e=!0,t=!0;(this._localHold||this._remoteHold)&&(e=!1,t=!1),this._audioMuted&&(e=!1),this._videoMuted&&(t=!1),this._toogleMuteAudio(!e),this._toogleMuteVideo(!t)}},{key:"_handleSessionTimersInIncomingRequest",value:function(e,t){if(this._sessionTimers.enabled){var n=void 0;e.session_expires&&e.session_expires>=s.MIN_SESSION_EXPIRES?(this._sessionTimers.currentExpires=e.session_expires,n=e.session_expires_refresher||"uas"):(this._sessionTimers.currentExpires=this._sessionTimers.defaultExpires,n="uas"),t.push("Session-Expires: "+this._sessionTimers.currentExpires+";refresher="+n),this._sessionTimers.refresher="uas"===n,this._runSessionTimer()}}},{key:"_handleSessionTimersInIncomingResponse",value:function(e){if(this._sessionTimers.enabled){var t=void 0;e.session_expires&&e.session_expires>=s.MIN_SESSION_EXPIRES?(this._sessionTimers.currentExpires=e.session_expires,t=e.session_expires_refresher||"uac"):(this._sessionTimers.currentExpires=this._sessionTimers.defaultExpires,t="uac"),this._sessionTimers.refresher="uac"===t,this._runSessionTimer()}}},{key:"_runSessionTimer",value:function(){var e=this,t=this._sessionTimers.currentExpires;this._sessionTimers.running=!0,clearTimeout(this._sessionTimers.timer),this._sessionTimers.refresher?this._sessionTimers.timer=setTimeout((function(){e._status!==w.STATUS_TERMINATED&&(v("runSessionTimer() | sending session refresh request"),e._sessionTimers.refreshMethod===s.UPDATE?e._sendUpdate():e._sendReinvite())}),500*t):this._sessionTimers.timer=setTimeout((function(){e._status!==w.STATUS_TERMINATED&&(y("runSessionTimer() | timer expired, terminating the session"),e.terminate({cause:s.causes.REQUEST_TIMEOUT,status_code:408,reason_phrase:"Session Timer Expired"}))}),1100*t)}},{key:"_toogleMuteAudio",value:function(e){var t=this._connection.getLocalStreams(),n=!0,r=!1,i=void 0;try{for(var a,o=t[Symbol.iterator]();!(n=(a=o.next()).done);n=!0){var s=a.value.getAudioTracks(),l=!0,c=!1,u=void 0;try{for(var f,d=s[Symbol.iterator]();!(l=(f=d.next()).done);l=!0){f.value.enabled=!e}}catch(e){c=!0,u=e}finally{try{!l&&d.return&&d.return()}finally{if(c)throw u}}}}catch(e){r=!0,i=e}finally{try{!n&&o.return&&o.return()}finally{if(r)throw i}}}},{key:"_toogleMuteVideo",value:function(e){var t=this._connection.getLocalStreams(),n=!0,r=!1,i=void 0;try{for(var a,o=t[Symbol.iterator]();!(n=(a=o.next()).done);n=!0){var s=a.value.getVideoTracks(),l=!0,c=!1,u=void 0;try{for(var f,d=s[Symbol.iterator]();!(l=(f=d.next()).done);l=!0){f.value.enabled=!e}}catch(e){c=!0,u=e}finally{try{!l&&d.return&&d.return()}finally{if(c)throw u}}}}catch(e){r=!0,i=e}finally{try{!n&&o.return&&o.return()}finally{if(r)throw i}}}},{key:"_newRTCSession",value:function(e,t){v("newRTCSession()"),this._ua.newRTCSession(this,{originator:e,session:this,request:t})}},{key:"_connecting",value:function(e){v("session connecting"),v('emit "connecting"'),this.emit("connecting",{request:e})}},{key:"_progress",value:function(e,t){v("session progress"),v('emit "progress"'),this.emit("progress",{originator:e,response:t||null})}},{key:"_accepted",value:function(e,t){v("session accepted"),this._start_time=new Date,v('emit "accepted"'),this.emit("accepted",{originator:e,response:t||null})}},{key:"_confirmed",value:function(e,t){v("session confirmed"),this._is_confirmed=!0,v('emit "confirmed"'),this.emit("confirmed",{originator:e,ack:t||null})}},{key:"_ended",value:function(e,t,n){v("session ended"),this._end_time=new Date,this._close(),v('emit "ended"'),this.emit("ended",{originator:e,message:t||null,cause:n})}},{key:"_failed",value:function(e,t,n){v("session failed"),this._close(),v('emit "failed"'),this.emit("failed",{originator:e,message:t||null,cause:n})}},{key:"_onhold",value:function(e){v("session onhold"),this._setLocalMediaStatus(),v('emit "hold"'),this.emit("hold",{originator:e})}},{key:"_onunhold",value:function(e){v("session onunhold"),this._setLocalMediaStatus(),v('emit "unhold"'),this.emit("unhold",{originator:e})}},{key:"_onmute",value:function(e){var t=e.audio,n=e.video;v("session onmute"),this._setLocalMediaStatus(),v('emit "muted"'),this.emit("muted",{audio:t,video:n})}},{key:"_onunmute",value:function(e){var t=e.audio,n=e.video;v("session onunmute"),this._setLocalMediaStatus(),v('emit "unmuted"'),this.emit("unmuted",{audio:t,video:n})}},{key:"C",get:function(){return w}},{key:"causes",get:function(){return s.causes}},{key:"id",get:function(){return this._id}},{key:"connection",get:function(){return this._connection}},{key:"contact",get:function(){return this._contact}},{key:"direction",get:function(){return this._direction}},{key:"local_identity",get:function(){return this._local_identity}},{key:"remote_identity",get:function(){return this._remote_identity}},{key:"start_time",get:function(){return this._start_time}},{key:"end_time",get:function(){return this._end_time}},{key:"data",get:function(){return this._data},set:function(e){this._data=e}},{key:"status",get:function(){return this._status}}]),t}(a)},{"./Constants":2,"./Dialog":3,"./Exceptions":6,"./RTCSession/DTMF":13,"./RTCSession/Info":14,"./RTCSession/ReferNotifier":15,"./RTCSession/ReferSubscriber":16,"./RequestSender":18,"./SIPMessage":19,"./Timers":21,"./Transactions":22,"./Utils":26,debug:29,events:31,"sdp-transform":36}],13:[function(e,t,n){"use strict";var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}();var i=e("events").EventEmitter,a=e("../Constants"),o=e("../Exceptions"),s=e("../Utils"),l=e("debug")("JsSIP:RTCSession:DTMF");e("debug")("JsSIP:ERROR:RTCSession:DTMF").log=console.warn.bind(console);var c={MIN_DURATION:70,MAX_DURATION:6e3,DEFAULT_DURATION:100,MIN_INTER_TONE_GAP:50,DEFAULT_INTER_TONE_GAP:500};t.exports=function(e){function t(e){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);var n=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return n._session=e,n._direction=null,n._tone=null,n._duration=null,n._request=null,n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),r(t,[{key:"send",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(void 0===e)throw new TypeError("Not enough arguments");if(this._direction="outgoing",this._session.status!==this._session.C.STATUS_CONFIRMED&&this._session.status!==this._session.C.STATUS_WAITING_FOR_ACK)throw new o.InvalidStateError(this._session.status);var r=s.cloneArray(n.extraHeaders);if(this.eventHandlers=n.eventHandlers||{},"string"==typeof e)e=e.toUpperCase();else{if("number"!=typeof e)throw new TypeError("Invalid tone: "+e);e=e.toString()}if(!e.match(/^[0-9A-DR#*]$/))throw new TypeError("Invalid tone: "+e);this._tone=e,this._duration=n.duration,r.push("Content-Type: application/dtmf-relay");var i="Signal="+this._tone+"\r\n";i+="Duration="+this._duration,this._session.newDTMF({originator:"local",dtmf:this,request:this._request}),this._session.sendRequest(a.INFO,{extraHeaders:r,eventHandlers:{onSuccessResponse:function(e){t.emit("succeeded",{originator:"remote",response:e})},onErrorResponse:function(e){t.eventHandlers.onFailed&&t.eventHandlers.onFailed(),t.emit("failed",{originator:"remote",response:e})},onRequestTimeout:function(){t._session.onRequestTimeout()},onTransportError:function(){t._session.onTransportError()},onDialogError:function(){t._session.onDialogError()}},body:i})}},{key:"init_incoming",value:function(e){var t=/^(Signal\s*?=\s*?)([0-9A-D#*]{1})(\s)?.*/,n=/^(Duration\s?=\s?)([0-9]{1,4})(\s)?.*/;if(this._direction="incoming",this._request=e,e.reply(200),e.body){var r=e.body.split("\n");r.length>=1&&t.test(r[0])&&(this._tone=r[0].replace(t,"$2")),r.length>=2&&n.test(r[1])&&(this._duration=parseInt(r[1].replace(n,"$2"),10))}this._duration||(this._duration=c.DEFAULT_DURATION),this._tone?this._session.newDTMF({originator:"remote",dtmf:this,request:e}):l("invalid INFO DTMF received, discarded")}},{key:"tone",get:function(){return this._tone}},{key:"duration",get:function(){return this._duration}}]),t}(i),t.exports.C=c},{"../Constants":2,"../Exceptions":6,"../Utils":26,debug:29,events:31}],14:[function(e,t,n){"use strict";var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}();var i=e("events").EventEmitter;e("debug")("JsSIP:ERROR:RTCSession:Info").log=console.warn.bind(console);var a=e("../Constants"),o=e("../Exceptions"),s=e("../Utils");t.exports=function(e){function t(e){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);var n=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return n._session=e,n._direction=null,n._contentType=null,n._body=null,n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),r(t,[{key:"send",value:function(e,t){var n=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(this._direction="outgoing",void 0===e)throw new TypeError("Not enough arguments");if(this._session.status!==this._session.C.STATUS_CONFIRMED&&this._session.status!==this._session.C.STATUS_WAITING_FOR_ACK)throw new o.InvalidStateError(this._session.status);this._contentType=e,this._body=t;var i=s.cloneArray(r.extraHeaders);i.push("Content-Type: "+e),this._session.newInfo({originator:"local",info:this,request:this.request}),this._session.sendRequest(a.INFO,{extraHeaders:i,eventHandlers:{onSuccessResponse:function(e){n.emit("succeeded",{originator:"remote",response:e})},onErrorResponse:function(e){n.emit("failed",{originator:"remote",response:e})},onTransportError:function(){n._session.onTransportError()},onRequestTimeout:function(){n._session.onRequestTimeout()},onDialogError:function(){n._session.onDialogError()}},body:t})}},{key:"init_incoming",value:function(e){this._direction="incoming",this.request=e,e.reply(200),this._contentType=e.getHeader("content-type"),this._body=e.body,this._session.newInfo({originator:"remote",info:this,request:e})}},{key:"contentType",get:function(){return this._contentType}},{key:"body",get:function(){return this._body}}]),t}(i)},{"../Constants":2,"../Exceptions":6,"../Utils":26,debug:29,events:31}],15:[function(e,t,n){"use strict";var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}();var i=e("../Constants"),a=e("debug")("JsSIP:RTCSession:ReferNotifier"),o="refer",s="message/sipfrag;version=2.0",l=300;t.exports=function(){function e(t,n,r){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this._session=t,this._id=n,this._expires=r||l,this._active=!0,this.notify(100)}return r(e,[{key:"notify",value:function(e,t){if(a("notify()"),!1!==this._active){t=t||i.REASON_PHRASE[e]||"";var n=void 0;n=e>=200?"terminated;reason=noresource":"active;expires="+this._expires,this._session.sendRequest(i.NOTIFY,{extraHeaders:["Event: "+o+";id="+this._id,"Subscription-State: "+n,"Content-Type: "+s],body:"SIP/2.0 "+e+" "+t,eventHandlers:{onErrorResponse:function(){this._active=!1}}})}}}]),e}()},{"../Constants":2,debug:29}],16:[function(e,t,n){"use strict";var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}();var i=e("events").EventEmitter,a=e("../Constants"),o=e("../Grammar"),s=e("../Utils"),l=e("debug")("JsSIP:RTCSession:ReferSubscriber");t.exports=function(e){function t(e){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t);var n=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return n._id=null,n._session=e,n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),r(t,[{key:"sendRefer",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};l("sendRefer()");var r=s.cloneArray(n.extraHeaders),i=n.eventHandlers||{};for(var o in i)Object.prototype.hasOwnProperty.call(i,o)&&this.on(o,i[o]);var c=null;n.replaces&&(c=n.replaces._request.call_id,c+=";to-tag="+n.replaces._to_tag,c+=";from-tag="+n.replaces._from_tag,c=encodeURIComponent(c));var u="Refer-To: <"+e+(c?"?Replaces="+c:"")+">";r.push(u),r.push("Contact: "+this._session.contact);var f=this._session.sendRequest(a.REFER,{extraHeaders:r,eventHandlers:{onSuccessResponse:function(e){t._requestSucceeded(e)},onErrorResponse:function(e){t._requestFailed(e,a.causes.REJECTED)},onTransportError:function(){t._requestFailed(null,a.causes.CONNECTION_ERROR)},onRequestTimeout:function(){t._requestFailed(null,a.causes.REQUEST_TIMEOUT)},onDialogError:function(){t._requestFailed(null,a.causes.DIALOG_ERROR)}}});this._id=f.cseq}},{key:"receiveNotify",value:function(e){if(l("receiveNotify()"),e.body){var t=o.parse(e.body.trim(),"Status_Line");if(-1!==t)switch(!0){case/^100$/.test(t.status_code):this.emit("trying",{request:e,status_line:t});break;case/^1[0-9]{2}$/.test(t.status_code):this.emit("progress",{request:e,status_line:t});break;case/^2[0-9]{2}$/.test(t.status_code):this.emit("accepted",{request:e,status_line:t});break;default:this.emit("failed",{request:e,status_line:t})}else l('receiveNotify() | error parsing NOTIFY body: "'+e.body+'"')}}},{key:"_requestSucceeded",value:function(e){l("REFER succeeded"),l('emit "requestSucceeded"'),this.emit("requestSucceeded",{response:e})}},{key:"_requestFailed",value:function(e,t){l("REFER failed"),l('emit "requestFailed"'),this.emit("requestFailed",{response:e||null,cause:t})}},{key:"id",get:function(){return this._id}}]),t}(i)},{"../Constants":2,"../Grammar":7,"../Utils":26,debug:29,events:31}],17:[function(e,t,n){"use strict";var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}();var i=e("./Utils"),a=e("./Constants"),o=e("./SIPMessage"),s=e("./RequestSender"),l=e("debug")("JsSIP:Registrator");t.exports=function(){function e(t,n){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e);this._ua=t,this._transport=n,this._registrar=t.configuration.registrar_server,this._expires=t.configuration.register_expires,this._call_id=i.createRandomToken(22),this._cseq=0,this._to_uri=t.configuration.uri,this._registrationTimer=null,this._registering=!1,this._registered=!1,this._contact=this._ua.contact.toString(),this._contact+=";+sip.ice",this._extraHeaders=[],this._extraContactParams="",this._contact+=";reg-id=1",this._contact+=';+sip.instance="<urn:uuid:'+this._ua.configuration.instance_id+'>"'}return r(e,[{key:"setExtraHeaders",value:function(e){Array.isArray(e)||(e=[]),this._extraHeaders=e.slice()}},{key:"setExtraContactParams",value:function(e){for(var t in e instanceof Object||(e={}),this._extraContactParams="",e)if(Object.prototype.hasOwnProperty.call(e,t)){var n=e[t];this._extraContactParams+=";"+t,n&&(this._extraContactParams+="="+n)}}},{key:"register",value:function(){var e=this;if(this._registering)l("Register request in progress...");else{var t=this._extraHeaders.slice();t.push("Contact: "+this._contact+";expires="+this._expires+this._extraContactParams),t.push("Expires: "+this._expires);var n=new o.OutgoingRequest(a.REGISTER,this._registrar,this._ua,{to_uri:this._to_uri,call_id:this._call_id,cseq:this._cseq+=1},t),r=new s(this._ua,n,{onRequestTimeout:function(){e._registrationFailure(null,a.causes.REQUEST_TIMEOUT)},onTransportError:function(){e._registrationFailure(null,a.causes.CONNECTION_ERROR)},onAuthenticated:function(){e._cseq+=1},onReceiveResponse:function(t){var n=void 0,r=void 0,o=t.getHeaders("contact").length;if(t.cseq===e._cseq)switch(null!==e._registrationTimer&&(clearTimeout(e._registrationTimer),e._registrationTimer=null),!0){case/^1[0-9]{2}$/.test(t.status_code):break;case/^2[0-9]{2}$/.test(t.status_code):if(e._registering=!1,!o){l("no Contact header in response to REGISTER, response ignored");break}for(;o--;){if((n=t.parseHeader("contact",o)).uri.user===e._ua.contact.uri.user){r=n.getParam("expires");break}n=null}if(!n){l("no Contact header pointing to us, response ignored");break}!r&&t.hasHeader("expires")&&(r=t.getHeader("expires")),r||(r=e._expires),(r=Number(r))<10&&(r=10),e._registrationTimer=setTimeout((function(){e._registrationTimer=null,0===e._ua.listeners("registrationExpiring").length?e.register():e._ua.emit("registrationExpiring")}),1e3*r-5e3),n.hasParam("temp-gruu")&&(e._ua.contact.temp_gruu=n.getParam("temp-gruu").replace(/"/g,"")),n.hasParam("pub-gruu")&&(e._ua.contact.pub_gruu=n.getParam("pub-gruu").replace(/"/g,"")),e._registered||(e._registered=!0,e._ua.registered({response:t}));break;case/^423$/.test(t.status_code):t.hasHeader("min-expires")?(e._expires=Number(t.getHeader("min-expires")),e._expires<10&&(e._expires=10),e.register()):(l("423 response received for REGISTER without Min-Expires"),e._registrationFailure(t,a.causes.SIP_FAILURE_CODE));break;default:var s=i.sipErrorCause(t.status_code);e._registrationFailure(t,s)}}});this._registering=!0,r.send()}}},{key:"unregister",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(this._registered){this._registered=!1,null!==this._registrationTimer&&(clearTimeout(this._registrationTimer),this._registrationTimer=null);var n=this._extraHeaders.slice();t.all?n.push("Contact: *"+this._extraContactParams):n.push("Contact: "+this._contact+";expires=0"+this._extraContactParams),n.push("Expires: 0");var r=new o.OutgoingRequest(a.REGISTER,this._registrar,this._ua,{to_uri:this._to_uri,call_id:this._call_id,cseq:this._cseq+=1},n),c=new s(this._ua,r,{onRequestTimeout:function(){e._unregistered(null,a.causes.REQUEST_TIMEOUT)},onTransportError:function(){e._unregistered(null,a.causes.CONNECTION_ERROR)},onAuthenticated:function(){e._cseq+=1},onReceiveResponse:function(t){switch(!0){case/^1[0-9]{2}$/.test(t.status_code):break;case/^2[0-9]{2}$/.test(t.status_code):e._unregistered(t);break;default:var n=i.sipErrorCause(t.status_code);e._unregistered(t,n)}}});c.send()}else l("already unregistered")}},{key:"close",value:function(){this._registered&&this.unregister()}},{key:"onTransportClosed",value:function(){this._registering=!1,null!==this._registrationTimer&&(clearTimeout(this._registrationTimer),this._registrationTimer=null),this._registered&&(this._registered=!1,this._ua.unregistered({}))}},{key:"_registrationFailure",value:function(e,t){this._registering=!1,this._ua.registrationFailed({response:e||null,cause:t}),this._registered&&(this._registered=!1,this._ua.unregistered({response:e||null,cause:t}))}},{key:"_unregistered",value:function(e,t){this._registering=!1,this._registered=!1,this._ua.unregistered({response:e||null,cause:t||null})}},{key:"registered",get:function(){return this._registered}}]),e}()},{"./Constants":2,"./RequestSender":18,"./SIPMessage":19,"./Utils":26,debug:29}],18:[function(e,t,n){"use strict";var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}();var i=e("./Constants"),a=e("./DigestAuthentication"),o=e("./Transactions"),s=e("debug")("JsSIP:RequestSender"),l={onRequestTimeout:function(){},onTransportError:function(){},onReceiveResponse:function(){},onAuthenticated:function(){}};t.exports=function(){function e(t,n,r){for(var a in function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this._ua=t,this._eventHandlers=r,this._method=n.method,this._request=n,this._auth=null,this._challenged=!1,this._staled=!1,l)Object.prototype.hasOwnProperty.call(l,a)&&(this._eventHandlers[a]||(this._eventHandlers[a]=l[a]));t.status!==t.C.STATUS_USER_CLOSED||this._method===i.BYE&&this._method===i.ACK||this._eventHandlers.onTransportError()}return r(e,[{key:"send",value:function(){var e=this,t={onRequestTimeout:function(){e._eventHandlers.onRequestTimeout()},onTransportError:function(){e._eventHandlers.onTransportError()},onReceiveResponse:function(t){e._receiveResponse(t)}};switch(this._method){case"INVITE":this.clientTransaction=new o.InviteClientTransaction(this._ua,this._ua.transport,this._request,t);break;case"ACK":this.clientTransaction=new o.AckClientTransaction(this._ua,this._ua.transport,this._request,t);break;default:this.clientTransaction=new o.NonInviteClientTransaction(this._ua,this._ua.transport,this._request,t)}this.clientTransaction.send()}},{key:"_receiveResponse",value:function(e){var t=void 0,n=void 0,r=e.status_code;if(401!==r&&407!==r||null===this._ua.configuration.password&&null===this._ua.configuration.ha1)this._eventHandlers.onReceiveResponse(e);else{if(401===e.status_code?(t=e.parseHeader("www-authenticate"),n="authorization"):(t=e.parseHeader("proxy-authenticate"),n="proxy-authorization"),!t)return s(e.status_code+" with wrong or missing challenge, cannot authenticate"),void this._eventHandlers.onReceiveResponse(e);if(!this._challenged||!this._staled&&!0===t.stale){if(this._auth||(this._auth=new a({username:this._ua.configuration.authorization_user,password:this._ua.configuration.password,realm:this._ua.configuration.realm,ha1:this._ua.configuration.ha1})),!this._auth.authenticate(this._request,t))return void this._eventHandlers.onReceiveResponse(e);this._challenged=!0,this._ua.set("realm",this._auth.get("realm")),this._ua.set("ha1",this._auth.get("ha1")),t.stale&&(this._staled=!0),this._request=this._request.clone(),this._request.cseq+=1,this._request.setHeader("cseq",this._request.cseq+" "+this._method),this._request.setHeader(n,this._auth.toString()),this._eventHandlers.onAuthenticated(this._request),this.send()}else this._eventHandlers.onReceiveResponse(e)}}}]),e}()},{"./Constants":2,"./DigestAuthentication":5,"./Transactions":22,debug:29}],19:[function(e,t,n){"use strict";var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}();function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var s=e("sdp-transform"),l=e("./Constants"),c=e("./Utils"),u=e("./NameAddrHeader"),f=e("./Grammar"),d=e("debug")("JsSIP:SIPMessage"),h=function(){function e(t,n,r,i,a,s){if(o(this,e),!t||!n||!r)return null;i=i||{},this.ua=r,this.headers={},this.method=t,this.ruri=n,this.body=s,this.extraHeaders=c.cloneArray(a),i.route_set?this.setHeader("route",i.route_set):r.configuration.use_preloaded_route&&this.setHeader("route","<"+r.transport.sip_uri+";lr>"),this.setHeader("via",""),this.setHeader("max-forwards",l.MAX_FORWARDS);var f=i.to_display_name||0===i.to_display_name?'"'+i.to_display_name+'" ':"";f+="<"+(i.to_uri||n)+">",f+=i.to_tag?";tag="+i.to_tag:"",this.to=u.parse(f),this.setHeader("to",f);var d=void 0;d=i.from_display_name||0===i.from_display_name?'"'+i.from_display_name+'" ':r.configuration.display_name?'"'+r.configuration.display_name+'" ':"",d+="<"+(i.from_uri||r.configuration.uri)+">;tag=",d+=i.from_tag||c.newTag(),this.from=u.parse(d),this.setHeader("from",d);var h=i.call_id||r.configuration.jssip_id+c.createRandomToken(15);this.call_id=h,this.setHeader("call-id",h);var p=i.cseq||Math.floor(1e4*Math.random());this.cseq=p,this.setHeader("cseq",p+" "+t)}return r(e,[{key:"setHeader",value:function(e,t){for(var n=new RegExp("^\\s*"+e+"\\s*:","i"),r=0;r<this.extraHeaders.length;r++)n.test(this.extraHeaders[r])&&this.extraHeaders.splice(r,1);this.headers[c.headerize(e)]=Array.isArray(t)?t:[t]}},{key:"getHeader",value:function(e){var t=this.headers[c.headerize(e)];if(t){if(t[0])return t[0]}else{var n=new RegExp("^\\s*"+e+"\\s*:","i"),r=!0,i=!1,a=void 0;try{for(var o,s=this.extraHeaders[Symbol.iterator]();!(r=(o=s.next()).done);r=!0){var l=o.value;if(n.test(l))return l.substring(l.indexOf(":")+1).trim()}}catch(e){i=!0,a=e}finally{try{!r&&s.return&&s.return()}finally{if(i)throw a}}}}},{key:"getHeaders",value:function(e){var t=this.headers[c.headerize(e)],n=[];if(t){var r=!0,i=!1,a=void 0;try{for(var o,s=t[Symbol.iterator]();!(r=(o=s.next()).done);r=!0){var l=o.value;n.push(l)}}catch(e){i=!0,a=e}finally{try{!r&&s.return&&s.return()}finally{if(i)throw a}}return n}var u=new RegExp("^\\s*"+e+"\\s*:","i"),f=!0,d=!1,h=void 0;try{for(var p,m=this.extraHeaders[Symbol.iterator]();!(f=(p=m.next()).done);f=!0){var g=p.value;u.test(g)&&n.push(g.substring(g.indexOf(":")+1).trim())}}catch(e){d=!0,h=e}finally{try{!f&&m.return&&m.return()}finally{if(d)throw h}}return n}},{key:"hasHeader",value:function(e){if(this.headers[c.headerize(e)])return!0;var t=new RegExp("^\\s*"+e+"\\s*:","i"),n=!0,r=!1,i=void 0;try{for(var a,o=this.extraHeaders[Symbol.iterator]();!(n=(a=o.next()).done);n=!0){var s=a.value;if(t.test(s))return!0}}catch(e){r=!0,i=e}finally{try{!n&&o.return&&o.return()}finally{if(r)throw i}}return!1}},{key:"parseSDP",value:function(e){return!e&&this.sdp||(this.sdp=s.parse(this.body||"")),this.sdp}},{key:"toString",value:function(){var e=this.method+" "+this.ruri+" SIP/2.0\r\n";for(var t in this.headers)if(Object.prototype.hasOwnProperty.call(this.headers,t)){var n=!0,r=!1,i=void 0;try{for(var a,o=this.headers[t][Symbol.iterator]();!(n=(a=o.next()).done);n=!0){e+=t+": "+a.value+"\r\n"}}catch(e){r=!0,i=e}finally{try{!n&&o.return&&o.return()}finally{if(r)throw i}}}var s=!0,u=!1,f=void 0;try{for(var d,h=this.extraHeaders[Symbol.iterator]();!(s=(d=h.next()).done);s=!0){e+=d.value.trim()+"\r\n"}}catch(e){u=!0,f=e}finally{try{!s&&h.return&&h.return()}finally{if(u)throw f}}var p=[];switch(this.method){case l.REGISTER:p.push("path","gruu");break;case l.INVITE:this.ua.configuration.session_timers&&p.push("timer"),(this.ua.contact.pub_gruu||this.ua.contact.temp_gruu)&&p.push("gruu"),p.push("ice","replaces");break;case l.UPDATE:this.ua.configuration.session_timers&&p.push("timer"),p.push("ice")}p.push("outbound");var m=this.ua.configuration.user_agent||l.USER_AGENT;(e+="Allow: "+l.ALLOWED_METHODS+"\r\n",e+="Supported: "+p+"\r\n",e+="User-Agent: "+m+"\r\n",this.body)?(e+="Content-Length: "+c.str_utf8_length(this.body)+"\r\n\r\n",e+=this.body):e+="Content-Length: 0\r\n\r\n";return e}},{key:"clone",value:function(){var t=new e(this.method,this.ruri,this.ua);return Object.keys(this.headers).forEach((function(e){t.headers[e]=this.headers[e].slice()}),this),t.body=this.body,t.extraHeaders=c.cloneArray(this.extraHeaders),t.to=this.to,t.from=this.from,t.call_id=this.call_id,t.cseq=this.cseq,t}}]),e}(),p=function(e){function t(e,n,r,a,s){o(this,t);var c=i(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,l.INVITE,e,n,r,a,s));return c.transaction=null,c}return a(t,e),r(t,[{key:"cancel",value:function(e){this.transaction.cancel(e)}},{key:"clone",value:function(){var e=new t(this.ruri,this.ua);return Object.keys(this.headers).forEach((function(t){e.headers[t]=this.headers[t].slice()}),this),e.body=this.body,e.extraHeaders=c.cloneArray(this.extraHeaders),e.to=this.to,e.from=this.from,e.call_id=this.call_id,e.cseq=this.cseq,e.transaction=this.transaction,e}}]),t}(h),m=function(){function e(){o(this,e),this.data=null,this.headers=null,this.method=null,this.via=null,this.via_branch=null,this.call_id=null,this.cseq=null,this.from=null,this.from_tag=null,this.to=null,this.to_tag=null,this.body=null,this.sdp=null}return r(e,[{key:"addHeader",value:function(e,t){var n={raw:t};e=c.headerize(e),this.headers[e]?this.headers[e].push(n):this.headers[e]=[n]}},{key:"getHeader",value:function(e){var t=this.headers[c.headerize(e)];if(t)return t[0]?t[0].raw:void 0}},{key:"getHeaders",value:function(e){var t=this.headers[c.headerize(e)],n=[];if(!t)return[];var r=!0,i=!1,a=void 0;try{for(var o,s=t[Symbol.iterator]();!(r=(o=s.next()).done);r=!0){var l=o.value;n.push(l.raw)}}catch(e){i=!0,a=e}finally{try{!r&&s.return&&s.return()}finally{if(i)throw a}}return n}},{key:"hasHeader",value:function(e){return!!this.headers[c.headerize(e)]}},{key:"parseHeader",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if(e=c.headerize(e),this.headers[e]){if(!(t>=this.headers[e].length)){var n=this.headers[e][t],r=n.raw;if(n.parsed)return n.parsed;var i=f.parse(r,e.replace(/-/g,"_"));return-1===i?(this.headers[e].splice(t,1),void d('error parsing "'+e+'" header field with value "'+r+'"')):(n.parsed=i,i)}d('not so many "'+e+'" headers present')}else d('header "'+e+'" not present')}},{key:"s",value:function(e,t){return this.parseHeader(e,t)}},{key:"setHeader",value:function(e,t){var n={raw:t};this.headers[c.headerize(e)]=[n]}},{key:"parseSDP",value:function(e){return!e&&this.sdp||(this.sdp=s.parse(this.body||"")),this.sdp}},{key:"toString",value:function(){return this.data}}]),e}(),g=function(e){function t(e){o(this,t);var n=i(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return n.ua=e,n.headers={},n.ruri=null,n.transport=null,n.server_transaction=null,n}return a(t,e),r(t,[{key:"reply",value:function(e,t,n,r,i,a){var o=[],s=this.getHeader("To");if(t=t||null,!(e=e||null)||e<100||e>699)throw new TypeError("Invalid status_code: "+e);if(t&&"string"!=typeof t&&!(t instanceof String))throw new TypeError("Invalid reason_phrase: "+t);t=t||l.REASON_PHRASE[e]||"",n=c.cloneArray(n);var u="SIP/2.0 "+e+" "+t+"\r\n";if(this.method===l.INVITE&&e>100&&e<=200){var f=this.getHeaders("record-route"),d=!0,h=!1,p=void 0;try{for(var m,g=f[Symbol.iterator]();!(d=(m=g.next()).done);d=!0){u+="Record-Route: "+m.value+"\r\n"}}catch(e){h=!0,p=e}finally{try{!d&&g.return&&g.return()}finally{if(h)throw p}}}var _=this.getHeaders("via"),b=!0,v=!1,y=void 0;try{for(var w,C=_[Symbol.iterator]();!(b=(w=C.next()).done);b=!0){u+="Via: "+w.value+"\r\n"}}catch(e){v=!0,y=e}finally{try{!b&&C.return&&C.return()}finally{if(v)throw y}}!this.to_tag&&e>100?s+=";tag="+c.newTag():this.to_tag&&!this.s("to").hasParam("tag")&&(s+=";tag="+this.to_tag),u+="To: "+s+"\r\n",u+="From: "+this.getHeader("From")+"\r\n",u+="Call-ID: "+this.call_id+"\r\n",u+="CSeq: "+this.cseq+" "+this.method+"\r\n";var A=!0,S=!1,x=void 0;try{for(var T,k=n[Symbol.iterator]();!(A=(T=k.next()).done);A=!0){u+=T.value.trim()+"\r\n"}}catch(e){S=!0,x=e}finally{try{!A&&k.return&&k.return()}finally{if(S)throw x}}switch(this.method){case l.INVITE:this.ua.configuration.session_timers&&o.push("timer"),(this.ua.contact.pub_gruu||this.ua.contact.temp_gruu)&&o.push("gruu"),o.push("ice","replaces");break;case l.UPDATE:this.ua.configuration.session_timers&&o.push("timer"),r&&o.push("ice"),o.push("replaces")}(o.push("outbound"),this.method===l.OPTIONS?(u+="Allow: "+l.ALLOWED_METHODS+"\r\n",u+="Accept: "+l.ACCEPTED_BODY_TYPES+"\r\n"):405===e?u+="Allow: "+l.ALLOWED_METHODS+"\r\n":415===e&&(u+="Accept: "+l.ACCEPTED_BODY_TYPES+"\r\n"),u+="Supported: "+o+"\r\n",r)?(u+="Content-Type: application/sdp\r\n",u+="Content-Length: "+c.str_utf8_length(r)+"\r\n\r\n",u+=r):u+="Content-Length: 0\r\n\r\n";this.server_transaction.receiveResponse(e,u,i,a)}},{key:"reply_sl",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=this.getHeaders("via");if(!e||e<100||e>699)throw new TypeError("Invalid status_code: "+e);if(t&&"string"!=typeof t&&!(t instanceof String))throw new TypeError("Invalid reason_phrase: "+t);var r="SIP/2.0 "+e+" "+(t=t||l.REASON_PHRASE[e]||"")+"\r\n",i=!0,a=!1,o=void 0;try{for(var s,u=n[Symbol.iterator]();!(i=(s=u.next()).done);i=!0){var f=s.value;r+="Via: "+f+"\r\n"}}catch(e){a=!0,o=e}finally{try{!i&&u.return&&u.return()}finally{if(a)throw o}}var d=this.getHeader("To");!this.to_tag&&e>100?d+=";tag="+c.newTag():this.to_tag&&!this.s("to").hasParam("tag")&&(d+=";tag="+this.to_tag),r+="To: "+d+"\r\n",r+="From: "+this.getHeader("From")+"\r\n",r+="Call-ID: "+this.call_id+"\r\n",r+="CSeq: "+this.cseq+" "+this.method+"\r\n",r+="Content-Length: 0\r\n\r\n",this.transport.send(r)}}]),t}(m),_=function(e){function t(){o(this,t);var e=i(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return e.headers={},e.status_code=null,e.reason_phrase=null,e}return a(t,e),t}(m);t.exports={OutgoingRequest:h,InitialOutgoingInviteRequest:p,IncomingRequest:g,IncomingResponse:_}},{"./Constants":2,"./Grammar":7,"./NameAddrHeader":10,"./Utils":26,debug:29,"sdp-transform":36}],20:[function(e,t,n){"use strict";var r=e("./Utils"),i=e("./Grammar"),a=e("debug")("JsSIP:ERROR:Socket");a.log=console.warn.bind(console),n.isSocket=function(e){if(Array.isArray(e))return!1;if(void 0===e)return a("undefined JsSIP.Socket instance"),!1;try{if(!r.isString(e.url))throw a("missing or invalid JsSIP.Socket url property"),new Error;if(!r.isString(e.via_transport))throw a("missing or invalid JsSIP.Socket via_transport property"),new Error;if(-1===i.parse(e.sip_uri,"SIP_URI"))throw a("missing or invalid JsSIP.Socket sip_uri property"),new Error}catch(e){return!1}try{["connect","disconnect","send"].forEach((function(t){if(!r.isFunction(e[t]))throw a("missing or invalid JsSIP.Socket method: "+t),new Error}))}catch(e){return!1}return!0}},{"./Grammar":7,"./Utils":26,debug:29}],21:[function(e,t,n){"use strict";var r=500;t.exports={T1:r,T2:4e3,T4:5e3,TIMER_B:32e3,TIMER_D:0,TIMER_F:32e3,TIMER_H:32e3,TIMER_I:0,TIMER_J:0,TIMER_K:0,TIMER_L:32e3,TIMER_M:32e3,PROVISIONAL_RESPONSE_INTERVAL:6e4}},{}],22:[function(e,t,n){"use strict";var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}();function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var s=e("events").EventEmitter,l=e("./Constants"),c=e("./SIPMessage"),u=e("./Timers"),f=e("debug")("JsSIP:NonInviteClientTransaction"),d=e("debug")("JsSIP:InviteClientTransaction"),h=e("debug")("JsSIP:AckClientTransaction"),p=e("debug")("JsSIP:NonInviteServerTransaction"),m=e("debug")("JsSIP:InviteServerTransaction"),g={STATUS_TRYING:1,STATUS_PROCEEDING:2,STATUS_CALLING:3,STATUS_ACCEPTED:4,STATUS_COMPLETED:5,STATUS_TERMINATED:6,STATUS_CONFIRMED:7,NON_INVITE_CLIENT:"nict",NON_INVITE_SERVER:"nist",INVITE_CLIENT:"ict",INVITE_SERVER:"ist"},_=function(e){function t(e,n,r,o){i(this,t);var s=a(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));s.type=g.NON_INVITE_CLIENT,s.id="z9hG4bK"+Math.floor(1e7*Math.random()),s.ua=e,s.transport=n,s.request=r,s.eventHandlers=o;var l="SIP/2.0/"+n.via_transport;return l+=" "+e.configuration.via_host+";branch="+s.id,s.request.setHeader("via",l),s.ua.newTransaction(s),s}return o(t,e),r(t,[{key:"stateChanged",value:function(e){this.state=e,this.emit("stateChanged")}},{key:"send",value:function(){var e=this;this.stateChanged(g.STATUS_TRYING),this.F=setTimeout((function(){e.timer_F()}),u.TIMER_F),this.transport.send(this.request)||this.onTransportError()}},{key:"onTransportError",value:function(){f("transport error occurred, deleting transaction "+this.id),clearTimeout(this.F),clearTimeout(this.K),this.stateChanged(g.STATUS_TERMINATED),this.ua.destroyTransaction(this),this.eventHandlers.onTransportError()}},{key:"timer_F",value:function(){f("Timer F expired for transaction "+this.id),this.stateChanged(g.STATUS_TERMINATED),this.ua.destroyTransaction(this),this.eventHandlers.onRequestTimeout()}},{key:"timer_K",value:function(){this.stateChanged(g.STATUS_TERMINATED),this.ua.destroyTransaction(this)}},{key:"receiveResponse",value:function(e){var t=this,n=e.status_code;if(n<200)switch(this.state){case g.STATUS_TRYING:case g.STATUS_PROCEEDING:this.stateChanged(g.STATUS_PROCEEDING),this.eventHandlers.onReceiveResponse(e)}else switch(this.state){case g.STATUS_TRYING:case g.STATUS_PROCEEDING:this.stateChanged(g.STATUS_COMPLETED),clearTimeout(this.F),408===n?this.eventHandlers.onRequestTimeout():this.eventHandlers.onReceiveResponse(e),this.K=setTimeout((function(){t.timer_K()}),u.TIMER_K)}}},{key:"C",get:function(){return g}}]),t}(s),b=function(e){function t(e,n,r,o){i(this,t);var s=a(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));s.type=g.INVITE_CLIENT,s.id="z9hG4bK"+Math.floor(1e7*Math.random()),s.ua=e,s.transport=n,s.request=r,s.eventHandlers=o,r.transaction=s;var l="SIP/2.0/"+n.via_transport;return l+=" "+e.configuration.via_host+";branch="+s.id,s.request.setHeader("via",l),s.ua.newTransaction(s),s}return o(t,e),r(t,[{key:"stateChanged",value:function(e){this.state=e,this.emit("stateChanged")}},{key:"send",value:function(){var e=this;this.stateChanged(g.STATUS_CALLING),this.B=setTimeout((function(){e.timer_B()}),u.TIMER_B),this.transport.send(this.request)||this.onTransportError()}},{key:"onTransportError",value:function(){clearTimeout(this.B),clearTimeout(this.D),clearTimeout(this.M),this.state!==g.STATUS_ACCEPTED&&(d("transport error occurred, deleting transaction "+this.id),this.eventHandlers.onTransportError()),this.stateChanged(g.STATUS_TERMINATED),this.ua.destroyTransaction(this)}},{key:"timer_M",value:function(){d("Timer M expired for transaction "+this.id),this.state===g.STATUS_ACCEPTED&&(clearTimeout(this.B),this.stateChanged(g.STATUS_TERMINATED),this.ua.destroyTransaction(this))}},{key:"timer_B",value:function(){d("Timer B expired for transaction "+this.id),this.state===g.STATUS_CALLING&&(this.stateChanged(g.STATUS_TERMINATED),this.ua.destroyTransaction(this),this.eventHandlers.onRequestTimeout())}},{key:"timer_D",value:function(){d("Timer D expired for transaction "+this.id),clearTimeout(this.B),this.stateChanged(g.STATUS_TERMINATED),this.ua.destroyTransaction(this)}},{key:"sendACK",value:function(e){var t=this,n=new c.OutgoingRequest(l.ACK,this.request.ruri,this.ua,{route_set:this.request.getHeader("route"),call_id:this.request.getHeader("call-id"),cseq:this.request.cseq});n.setHeader("from",this.request.getHeader("from")),n.setHeader("via",this.request.getHeader("via")),n.setHeader("to",e.getHeader("to")),this.D=setTimeout((function(){t.timer_D()}),u.TIMER_D),this.transport.send(n)}},{key:"cancel",value:function(e){if(this.state===g.STATUS_PROCEEDING){var t=new c.OutgoingRequest(l.CANCEL,this.request.ruri,this.ua,{route_set:this.request.getHeader("route"),call_id:this.request.getHeader("call-id"),cseq:this.request.cseq});t.setHeader("from",this.request.getHeader("from")),t.setHeader("via",this.request.getHeader("via")),t.setHeader("to",this.request.getHeader("to")),e&&t.setHeader("reason",e),this.transport.send(t)}}},{key:"receiveResponse",value:function(e){var t=this,n=e.status_code;if(n>=100&&n<=199)switch(this.state){case g.STATUS_CALLING:this.stateChanged(g.STATUS_PROCEEDING),this.eventHandlers.onReceiveResponse(e);break;case g.STATUS_PROCEEDING:this.eventHandlers.onReceiveResponse(e)}else if(n>=200&&n<=299)switch(this.state){case g.STATUS_CALLING:case g.STATUS_PROCEEDING:this.stateChanged(g.STATUS_ACCEPTED),this.M=setTimeout((function(){t.timer_M()}),u.TIMER_M),this.eventHandlers.onReceiveResponse(e);break;case g.STATUS_ACCEPTED:this.eventHandlers.onReceiveResponse(e)}else if(n>=300&&n<=699)switch(this.state){case g.STATUS_CALLING:case g.STATUS_PROCEEDING:this.stateChanged(g.STATUS_COMPLETED),this.sendACK(e),this.eventHandlers.onReceiveResponse(e);break;case g.STATUS_COMPLETED:this.sendACK(e)}}},{key:"C",get:function(){return g}}]),t}(s),v=function(e){function t(e,n,r,o){i(this,t);var s=a(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));s.id="z9hG4bK"+Math.floor(1e7*Math.random()),s.transport=n,s.request=r,s.eventHandlers=o;var l="SIP/2.0/"+n.via_transport;return l+=" "+e.configuration.via_host+";branch="+s.id,s.request.setHeader("via",l),s}return o(t,e),r(t,[{key:"send",value:function(){this.transport.send(this.request)||this.onTransportError()}},{key:"onTransportError",value:function(){h("transport error occurred for transaction "+this.id),this.eventHandlers.onTransportError()}},{key:"C",get:function(){return g}}]),t}(s),y=function(e){function t(e,n,r){i(this,t);var o=a(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return o.type=g.NON_INVITE_SERVER,o.id=r.via_branch,o.ua=e,o.transport=n,o.request=r,o.last_response="",r.server_transaction=o,o.state=g.STATUS_TRYING,e.newTransaction(o),o}return o(t,e),r(t,[{key:"stateChanged",value:function(e){this.state=e,this.emit("stateChanged")}},{key:"timer_J",value:function(){p("Timer J expired for transaction "+this.id),this.stateChanged(g.STATUS_TERMINATED),this.ua.destroyTransaction(this)}},{key:"onTransportError",value:function(){this.transportError||(this.transportError=!0,p("transport error occurred, deleting transaction "+this.id),clearTimeout(this.J),this.stateChanged(g.STATUS_TERMINATED),this.ua.destroyTransaction(this))}},{key:"receiveResponse",value:function(e,t,n,r){var i=this;if(100===e)switch(this.state){case g.STATUS_TRYING:this.stateChanged(g.STATUS_PROCEEDING),this.transport.send(t)||this.onTransportError();break;case g.STATUS_PROCEEDING:this.last_response=t,this.transport.send(t)?n&&n():(this.onTransportError(),r&&r())}else if(e>=200&&e<=699)switch(this.state){case g.STATUS_TRYING:case g.STATUS_PROCEEDING:this.stateChanged(g.STATUS_COMPLETED),this.last_response=t,this.J=setTimeout((function(){i.timer_J()}),u.TIMER_J),this.transport.send(t)?n&&n():(this.onTransportError(),r&&r())}}},{key:"C",get:function(){return g}}]),t}(s),w=function(e){function t(e,n,r){i(this,t);var o=a(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return o.type=g.INVITE_SERVER,o.id=r.via_branch,o.ua=e,o.transport=n,o.request=r,o.last_response="",r.server_transaction=o,o.state=g.STATUS_PROCEEDING,e.newTransaction(o),o.resendProvisionalTimer=null,r.reply(100),o}return o(t,e),r(t,[{key:"stateChanged",value:function(e){this.state=e,this.emit("stateChanged")}},{key:"timer_H",value:function(){m("Timer H expired for transaction "+this.id),this.state===g.STATUS_COMPLETED&&m("ACK not received, dialog will be terminated"),this.stateChanged(g.STATUS_TERMINATED),this.ua.destroyTransaction(this)}},{key:"timer_I",value:function(){this.stateChanged(g.STATUS_TERMINATED)}},{key:"timer_L",value:function(){m("Timer L expired for transaction "+this.id),this.state===g.STATUS_ACCEPTED&&(this.stateChanged(g.STATUS_TERMINATED),this.ua.destroyTransaction(this))}},{key:"onTransportError",value:function(){this.transportError||(this.transportError=!0,m("transport error occurred, deleting transaction "+this.id),null!==this.resendProvisionalTimer&&(clearInterval(this.resendProvisionalTimer),this.resendProvisionalTimer=null),clearTimeout(this.L),clearTimeout(this.H),clearTimeout(this.I),this.stateChanged(g.STATUS_TERMINATED),this.ua.destroyTransaction(this))}},{key:"resend_provisional",value:function(){this.transport.send(this.last_response)||this.onTransportError()}},{key:"receiveResponse",value:function(e,t,n,r){var i=this;if(e>=100&&e<=199)switch(this.state){case g.STATUS_PROCEEDING:this.transport.send(t)||this.onTransportError(),this.last_response=t}if(e>100&&e<=199&&this.state===g.STATUS_PROCEEDING)null===this.resendProvisionalTimer&&(this.resendProvisionalTimer=setInterval((function(){i.resend_provisional()}),u.PROVISIONAL_RESPONSE_INTERVAL));else if(e>=200&&e<=299)switch(this.state){case g.STATUS_PROCEEDING:this.stateChanged(g.STATUS_ACCEPTED),this.last_response=t,this.L=setTimeout((function(){i.timer_L()}),u.TIMER_L),null!==this.resendProvisionalTimer&&(clearInterval(this.resendProvisionalTimer),this.resendProvisionalTimer=null);case g.STATUS_ACCEPTED:this.transport.send(t)?n&&n():(this.onTransportError(),r&&r())}else if(e>=300&&e<=699)switch(this.state){case g.STATUS_PROCEEDING:null!==this.resendProvisionalTimer&&(clearInterval(this.resendProvisionalTimer),this.resendProvisionalTimer=null),this.transport.send(t)?(this.stateChanged(g.STATUS_COMPLETED),this.H=setTimeout((function(){i.timer_H()}),u.TIMER_H),n&&n()):(this.onTransportError(),r&&r())}}},{key:"C",get:function(){return g}}]),t}(s);t.exports={C:g,NonInviteClientTransaction:_,InviteClientTransaction:b,AckClientTransaction:v,NonInviteServerTransaction:y,InviteServerTransaction:w,checkTransaction:function(e,t){var n=e._transactions,r=void 0;switch(t.method){case l.INVITE:if(r=n.ist[t.via_branch]){switch(r.state){case g.STATUS_PROCEEDING:r.transport.send(r.last_response)}return!0}break;case l.ACK:if(!(r=n.ist[t.via_branch]))return!1;if(r.state===g.STATUS_ACCEPTED)return!1;if(r.state===g.STATUS_COMPLETED)return r.state=g.STATUS_CONFIRMED,r.I=setTimeout((function(){r.timer_I()}),u.TIMER_I),!0;break;case l.CANCEL:return(r=n.ist[t.via_branch])?(t.reply_sl(200),r.state!==g.STATUS_PROCEEDING):(t.reply_sl(481),!0);default:if(r=n.nist[t.via_branch]){switch(r.state){case g.STATUS_TRYING:break;case g.STATUS_PROCEEDING:case g.STATUS_COMPLETED:r.transport.send(r.last_response)}return!0}}}}},{"./Constants":2,"./SIPMessage":19,"./Timers":21,debug:29,events:31}],23:[function(e,t,n){"use strict";var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}();function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var a=e("./Socket"),o=e("debug")("JsSIP:Transport"),s=e("debug")("JsSIP:ERROR:Transport");s.log=console.warn.bind(console);var l={STATUS_CONNECTED:0,STATUS_CONNECTING:1,STATUS_DISCONNECTED:2,SOCKET_STATUS_READY:0,SOCKET_STATUS_ERROR:1,recovery_options:{min_interval:2,max_interval:30}};t.exports=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:l.recovery_options;if(i(this,e),o("new()"),this.status=l.STATUS_DISCONNECTED,this.socket=null,this.sockets=[],this.recovery_options=n,this.recover_attempts=0,this.recovery_timer=null,this.close_requested=!1,void 0===t)throw new TypeError("Invalid argument. undefined 'sockets' argument");t instanceof Array||(t=[t]),t.forEach((function(e){if(!a.isSocket(e.socket))throw new TypeError("Invalid argument. invalid 'JsSIP.Socket' instance");if(e.weight&&!Number(e.weight))throw new TypeError("Invalid argument. 'weight' attribute is not a number");this.sockets.push({socket:e.socket,weight:e.weight||0,status:l.SOCKET_STATUS_READY})}),this),this._getSocket()}return r(e,[{key:"connect",value:function(){o("connect()"),this.isConnected()?o("Transport is already connected"):this.isConnecting()?o("Transport is connecting"):(this.close_requested=!1,this.status=l.STATUS_CONNECTING,this.onconnecting({socket:this.socket,attempts:this.recover_attempts}),this.close_requested||(this.socket.onconnect=this._onConnect.bind(this),this.socket.ondisconnect=this._onDisconnect.bind(this),this.socket.ondata=this._onData.bind(this),this.socket.connect()))}},{key:"disconnect",value:function(){o("close()"),this.close_requested=!0,this.recover_attempts=0,this.status=l.STATUS_DISCONNECTED,null!==this.recovery_timer&&(clearTimeout(this.recovery_timer),this.recovery_timer=null),this.socket.onconnect=function(){},this.socket.ondisconnect=function(){},this.socket.ondata=function(){},this.socket.disconnect(),this.ondisconnect({socket:this.socket,error:!1})}},{key:"send",value:function(e){if(o("send()"),!this.isConnected())return s("unable to send message, transport is not connected"),!1;var t=e.toString();return o("sending message:\n\n"+t+"\n"),this.socket.send(t)}},{key:"isConnected",value:function(){return this.status===l.STATUS_CONNECTED}},{key:"isConnecting",value:function(){return this.status===l.STATUS_CONNECTING}},{key:"_reconnect",value:function(){var e=this;this.recover_attempts+=1;var t=Math.floor(Math.random()*Math.pow(2,this.recover_attempts)+1);t<this.recovery_options.min_interval?t=this.recovery_options.min_interval:t>this.recovery_options.max_interval&&(t=this.recovery_options.max_interval),o("reconnection attempt: "+this.recover_attempts+". next connection attempt in "+t+" seconds"),this.recovery_timer=setTimeout((function(){e.close_requested||e.isConnected()||e.isConnecting()||(e._getSocket(),e.connect())}),1e3*t)}},{key:"_getSocket",value:function(){var e=[];if(this.sockets.forEach((function(t){t.status!==l.SOCKET_STATUS_ERROR&&(0===e.length?e.push(t):t.weight>e[0].weight?e=[t]:t.weight===e[0].weight&&e.push(t))})),0===e.length)return this.sockets.forEach((function(e){e.status=l.SOCKET_STATUS_READY})),void this._getSocket();var t=Math.floor(Math.random()*e.length);this.socket=e[t].socket}},{key:"_onConnect",value:function(){this.recover_attempts=0,this.status=l.STATUS_CONNECTED,null!==this.recovery_timer&&(clearTimeout(this.recovery_timer),this.recovery_timer=null),this.onconnect({socket:this})}},{key:"_onDisconnect",value:function(e,t,n){this.status=l.STATUS_DISCONNECTED,this.ondisconnect({socket:this.socket,error:e,code:t,reason:n}),this.close_requested||(this.sockets.forEach((function(e){this.socket===e.socket&&(e.status=l.SOCKET_STATUS_ERROR)}),this),this._reconnect(e))}},{key:"_onData",value:function(e){if("\r\n"!==e){if("string"!=typeof e){try{e=String.fromCharCode.apply(null,new Uint8Array(e))}catch(e){return void o("received binary message failed to be converted into string, message discarded")}o("received binary message:\n\n"+e+"\n")}else o("received text message:\n\n"+e+"\n");this.ondata({transport:this,message:e})}else o("received message with CRLF Keep Alive response")}},{key:"via_transport",get:function(){return this.socket.via_transport}},{key:"url",get:function(){return this.socket.url}},{key:"sip_uri",get:function(){return this.socket.sip_uri}}]),e}()},{"./Socket":20,debug:29}],24:[function(e,t,n){"use strict";var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}();var i=e("events").EventEmitter,a=e("./Constants"),o=e("./Registrator"),s=e("./RTCSession"),l=e("./Message"),c=e("./Transactions"),u=e("./Transport"),f=e("./Utils"),d=e("./Exceptions"),h=e("./URI"),p=e("./Grammar"),m=e("./Parser"),g=e("./SIPMessage"),_=e("./sanityCheck"),b=e("./Config"),v=e("debug")("JsSIP:UA"),y=e("debug")("JsSIP:ERROR:UA");y.log=console.warn.bind(console);var w={STATUS_INIT:0,STATUS_READY:1,STATUS_USER_CLOSED:2,STATUS_NOT_READY:3,CONFIGURATION_ERROR:1,NETWORK_ERROR:2};function C(e){this.emit("connecting",e)}function A(e){this._status!==w.STATUS_USER_CLOSED&&(this._status=w.STATUS_READY,this._error=null,this.emit("connected",e),this._dynConfiguration.register&&this._registrator.register())}function S(e){var t=!0,n=!1,r=void 0;try{for(var i,a=["nict","ict","nist","ist"][Symbol.iterator]();!(t=(i=a.next()).done);t=!0){var o=i.value;for(var s in this._transactions[o])Object.prototype.hasOwnProperty.call(this._transactions[o],s)&&this._transactions[o][s].onTransportError()}}catch(e){n=!0,r=e}finally{try{!t&&a.return&&a.return()}finally{if(n)throw r}}this.emit("disconnected",e),this._registrator.onTransportClosed(),this._status!==w.STATUS_USER_CLOSED&&(this._status=w.STATUS_NOT_READY,this._error=w.NETWORK_ERROR)}function x(e){var t=e.transport,n=e.message;if((n=m.parseMessage(n,this))&&!(this._status===w.STATUS_USER_CLOSED&&n instanceof g.IncomingRequest)&&_(n,this,t))if(n instanceof g.IncomingRequest)n.transport=t,this.receiveRequest(n);else if(n instanceof g.IncomingResponse){var r=void 0;switch(n.method){case a.INVITE:(r=this._transactions.ict[n.via_branch])&&r.receiveResponse(n);break;case a.ACK:break;default:(r=this._transactions.nict[n.via_branch])&&r.receiveResponse(n)}}}t.exports=function(e){function t(e){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),v("new() [configuration:%o]",e);var n=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));if(n._cache={credentials:{}},n._configuration=Object.assign({},b.settings),n._dynConfiguration={},n._dialogs={},n._applicants={},n._sessions={},n._transport=null,n._contact=null,n._status=w.STATUS_INIT,n._error=null,n._transactions={nist:{},nict:{},ist:{},ict:{}},n._data={},n._closeTimer=null,void 0===e)throw new TypeError("Not enough arguments");try{n._loadConfig(e)}catch(e){throw n._status=w.STATUS_NOT_READY,n._error=w.CONFIGURATION_ERROR,e}return n._registrator=new o(n),n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),r(t,null,[{key:"C",get:function(){return w}}]),r(t,[{key:"start",value:function(){v("start()"),this._status===w.STATUS_INIT?this._transport.connect():this._status===w.STATUS_USER_CLOSED?(v("restarting UA"),null!==this._closeTimer&&(clearTimeout(this._closeTimer),this._closeTimer=null,this._transport.disconnect()),this._status=w.STATUS_INIT,this._transport.connect()):this._status===w.STATUS_READY?v("UA is in READY status, not restarted"):v("ERROR: connection is down, Auto-Recovery system is trying to reconnect"),this._dynConfiguration.register=this._configuration.register}},{key:"register",value:function(){v("register()"),this._dynConfiguration.register=!0,this._registrator.register()}},{key:"unregister",value:function(e){v("unregister()"),this._dynConfiguration.register=!1,this._registrator.unregister(e)}},{key:"registrator",value:function(){return this._registrator}},{key:"isRegistered",value:function(){return this._registrator.registered}},{key:"isConnected",value:function(){return this._transport.isConnected()}},{key:"call",value:function(e,t){v("call()");var n=new s(this);return n.connect(e,t),n}},{key:"sendMessage",value:function(e,t,n){v("sendMessage()");var r=new l(this);return r.send(e,t,n),r}},{key:"terminateSessions",value:function(e){for(var t in v("terminateSessions()"),this._sessions)this._sessions[t].isEnded()||this._sessions[t].terminate(e)}},{key:"stop",value:function(){var e=this;if(v("stop()"),this._dynConfiguration={},this._status!==w.STATUS_USER_CLOSED){this._registrator.close();var t=Object.keys(this._sessions).length;for(var n in this._sessions)if(Object.prototype.hasOwnProperty.call(this._sessions,n)){v("closing session "+n);try{this._sessions[n].terminate()}catch(e){}}for(var r in this._applicants)if(Object.prototype.hasOwnProperty.call(this._applicants,r))try{this._applicants[r].close()}catch(e){}this._status=w.STATUS_USER_CLOSED,0===Object.keys(this._transactions.nict).length+Object.keys(this._transactions.nist).length+Object.keys(this._transactions.ict).length+Object.keys(this._transactions.ist).length&&0===t?this._transport.disconnect():this._closeTimer=setTimeout((function(){e._closeTimer=null,e._transport.disconnect()}),2e3)}else v("UA already closed")}},{key:"normalizeTarget",value:function(e){return f.normalizeTarget(e,this._configuration.hostport_params)}},{key:"get",value:function(e){switch(e){case"realm":return this._configuration.realm;case"ha1":return this._configuration.ha1;default:return void y('get() | cannot get "%s" parameter in runtime',e)}}},{key:"set",value:function(e,t){switch(e){case"password":this._configuration.password=String(t);break;case"realm":this._configuration.realm=String(t);break;case"ha1":this._configuration.ha1=String(t),this._configuration.password=null;break;case"display_name":if(-1===p.parse('"'+t+'"',"display_name"))return y('set() | wrong "display_name"'),!1;this._configuration.display_name=t;break;default:return y('set() | cannot set "%s" parameter in runtime',e),!1}return!0}},{key:"newTransaction",value:function(e){this._transactions[e.type][e.id]=e,this.emit("newTransaction",{transaction:e})}},{key:"destroyTransaction",value:function(e){delete this._transactions[e.type][e.id],this.emit("transactionDestroyed",{transaction:e})}},{key:"newDialog",value:function(e){this._dialogs[e.id]=e}},{key:"destroyDialog",value:function(e){delete this._dialogs[e.id]}},{key:"newMessage",value:function(e,t){this._applicants[e]=e,this.emit("newMessage",t)}},{key:"destroyMessage",value:function(e){delete this._applicants[e]}},{key:"newRTCSession",value:function(e,t){this._sessions[e.id]=e,this.emit("newRTCSession",t)}},{key:"destroyRTCSession",value:function(e){delete this._sessions[e.id]}},{key:"registered",value:function(e){this.emit("registered",e)}},{key:"unregistered",value:function(e){this.emit("unregistered",e)}},{key:"registrationFailed",value:function(e){this.emit("registrationFailed",e)}},{key:"receiveRequest",value:function(e){var t=e.method;if(e.ruri.user!==this._configuration.uri.user&&e.ruri.user!==this._contact.uri.user)return v("Request-URI does not point to us"),void(e.method!==a.ACK&&e.reply_sl(404));if(e.ruri.scheme!==a.SIPS){if(!c.checkTransaction(this,e)){if(t===a.INVITE?new c.InviteServerTransaction(this,this._transport,e):t!==a.ACK&&t!==a.CANCEL&&new c.NonInviteServerTransaction(this,this._transport,e),t===a.OPTIONS)e.reply(200);else if(t===a.MESSAGE){if(0===this.listeners("newMessage").length)return void e.reply(405);new l(this).init_incoming(e)}else if(t===a.INVITE&&!e.to_tag&&0===this.listeners("newRTCSession").length)return void e.reply(405);var n=void 0,r=void 0;if(e.to_tag)(n=this._findDialog(e.call_id,e.from_tag,e.to_tag))?n.receiveRequest(e):t===a.NOTIFY?(r=this._findSession(e))?r.receiveRequest(e):(v("received NOTIFY request for a non existent subscription"),e.reply(481,"Subscription does not exist")):t!==a.ACK&&e.reply(481);else switch(t){case a.INVITE:if(window.RTCPeerConnection)if(e.hasHeader("replaces")){var i=e.replaces;(n=this._findDialog(i.call_id,i.from_tag,i.to_tag))?(r=n.owner).isEnded()?e.reply(603):r.receiveRequest(e):e.reply(481)}else(r=new s(this)).init_incoming(e);else y("INVITE received but WebRTC is not supported"),e.reply(488);break;case a.BYE:e.reply(481);break;case a.CANCEL:(r=this._findSession(e))?r.receiveRequest(e):v("received CANCEL request for a non existent session");break;case a.ACK:break;default:e.reply(405)}}}else e.reply_sl(416)}},{key:"_findSession",value:function(e){var t=e.call_id,n=e.from_tag,r=e.to_tag,i=t+n,a=this._sessions[i],o=t+r,s=this._sessions[o];return a||(s||null)}},{key:"_findDialog",value:function(e,t,n){var r=e+t+n,i=this._dialogs[r];return i||(r=e+n+t,(i=this._dialogs[r])||null)}},{key:"_loadConfig",value:function(e){try{b.load(this._configuration,e)}catch(e){throw e}0===this._configuration.display_name&&(this._configuration.display_name="0"),this._configuration.instance_id||(this._configuration.instance_id=f.newUUID()),this._configuration.jssip_id=f.createRandomToken(5);var t=this._configuration.uri.clone();t.user=null,this._configuration.hostport_params=t.toString().replace(/^sip:/i,"");try{this._transport=new u(this._configuration.sockets,{max_interval:this._configuration.connection_recovery_max_interval,min_interval:this._configuration.connection_recovery_min_interval}),this._transport.onconnecting=C.bind(this),this._transport.onconnect=A.bind(this),this._transport.ondisconnect=S.bind(this),this._transport.ondata=x.bind(this)}catch(e){throw y(e),new d.ConfigurationError("sockets",this._configuration.sockets)}if(delete this._configuration.sockets,this._configuration.authorization_user||(this._configuration.authorization_user=this._configuration.uri.user),!this._configuration.registrar_server){var n=this._configuration.uri.clone();n.user=null,n.clearParams(),n.clearHeaders(),this._configuration.registrar_server=n}this._configuration.no_answer_timeout*=1e3,this._configuration.contact_uri?this._configuration.via_host=this._configuration.contact_uri.host:this._configuration.contact_uri=new h("sip",f.createRandomToken(8),this._configuration.via_host,null,{transport:"ws"}),this._contact={pub_gruu:null,temp_gruu:null,uri:this._configuration.contact_uri,toString:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.anonymous||null,n=e.outbound||null,r="<";return r+=t?this.temp_gruu||"sip:[email-masked];transport=ws":this.pub_gruu||this.uri.toString(),!n||(t?this.temp_gruu:this.pub_gruu)||(r+=";ob"),r+=">"}};var r=["password","realm","ha1","display_name","register"];for(var i in this._configuration)Object.prototype.hasOwnProperty.call(this._configuration,i)&&(-1!==r.indexOf(i)?Object.defineProperty(this._configuration,i,{writable:!0,configurable:!1}):Object.defineProperty(this._configuration,i,{writable:!1,configurable:!1}));for(var a in v("configuration parameters after validation:"),this._configuration)if(Object.prototype.hasOwnProperty.call(b.settings,a))switch(a){case"uri":case"registrar_server":v("- "+a+": "+this._configuration[a]);break;case"password":case"ha1":v("- "+a+": NOT SHOWN");break;default:v("- "+a+": "+JSON.stringify(this._configuration[a]))}}},{key:"C",get:function(){return w}},{key:"status",get:function(){return this._status}},{key:"contact",get:function(){return this._contact}},{key:"configuration",get:function(){return this._configuration}},{key:"transport",get:function(){return this._transport}}]),t}(i)},{"./Config":1,"./Constants":2,"./Exceptions":6,"./Grammar":7,"./Message":9,"./Parser":11,"./RTCSession":12,"./Registrator":17,"./SIPMessage":19,"./Transactions":22,"./Transport":23,"./URI":25,"./Utils":26,"./sanityCheck":28,debug:29,events:31}],25:[function(e,t,n){"use strict";var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}();function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var a=e("./Constants"),o=e("./Utils"),s=e("./Grammar");t.exports=function(){function e(t,n,r,o){var s=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},l=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{};if(i(this,e),!r)throw new TypeError('missing or invalid "host" parameter');for(var c in this._parameters={},this._headers={},this._scheme=t||a.SIP,this._user=n,this._host=r,this._port=o,s)Object.prototype.hasOwnProperty.call(s,c)&&this.setParam(c,s[c]);for(var u in l)Object.prototype.hasOwnProperty.call(l,u)&&this.setHeader(u,l[u])}return r(e,null,[{key:"parse",value:function(e){return-1!==(e=s.parse(e,"SIP_URI"))?e:void 0}}]),r(e,[{key:"setParam",value:function(e,t){e&&(this._parameters[e.toLowerCase()]=null==t?null:t.toString())}},{key:"getParam",value:function(e){if(e)return this._parameters[e.toLowerCase()]}},{key:"hasParam",value:function(e){if(e)return!!this._parameters.hasOwnProperty(e.toLowerCase())}},{key:"deleteParam",value:function(e){if(e=e.toLowerCase(),this._parameters.hasOwnProperty(e)){var t=this._parameters[e];return delete this._parameters[e],t}}},{key:"clearParams",value:function(){this._parameters={}}},{key:"setHeader",value:function(e,t){this._headers[o.headerize(e)]=Array.isArray(t)?t:[t]}},{key:"getHeader",value:function(e){if(e)return this._headers[o.headerize(e)]}},{key:"hasHeader",value:function(e){if(e)return!!this._headers.hasOwnProperty(o.headerize(e))}},{key:"deleteHeader",value:function(e){if(e=o.headerize(e),this._headers.hasOwnProperty(e)){var t=this._headers[e];return delete this._headers[e],t}}},{key:"clearHeaders",value:function(){this._headers={}}},{key:"clone",value:function(){return new e(this._scheme,this._user,this._host,this._port,JSON.parse(JSON.stringify(this._parameters)),JSON.parse(JSON.stringify(this._headers)))}},{key:"toString",value:function(){var e=[],t=this._scheme+":";for(var n in this._user&&(t+=o.escapeUser(this._user)+"@"),t+=this._host,(this._port||0===this._port)&&(t+=":"+this._port),this._parameters)Object.prototype.hasOwnProperty.call(this._parameters,n)&&(t+=";"+n,null!==this._parameters[n]&&(t+="="+this._parameters[n]));for(var r in this._headers)if(Object.prototype.hasOwnProperty.call(this._headers,r)){var i=!0,a=!1,s=void 0;try{for(var l,c=this._headers[r][Symbol.iterator]();!(i=(l=c.next()).done);i=!0){var u=l.value;e.push(r+"="+u)}}catch(e){a=!0,s=e}finally{try{!i&&c.return&&c.return()}finally{if(a)throw s}}}return e.length>0&&(t+="?"+e.join("&")),t}},{key:"toAor",value:function(e){var t=this._scheme+":";return this._user&&(t+=o.escapeUser(this._user)+"@"),t+=this._host,e&&(this._port||0===this._port)&&(t+=":"+this._port),t}},{key:"scheme",get:function(){return this._scheme},set:function(e){this._scheme=e.toLowerCase()}},{key:"user",get:function(){return this._user},set:function(e){this._user=e}},{key:"host",get:function(){return this._host},set:function(e){this._host=e.toLowerCase()}},{key:"port",get:function(){return this._port},set:function(e){this._port=0===e?e:parseInt(e,10)||null}}]),e}()},{"./Constants":2,"./Grammar":7,"./Utils":26}],26:[function(e,t,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i=e("./Constants"),a=e("./URI"),o=e("./Grammar");n.str_utf8_length=function(e){return unescape(encodeURIComponent(e)).length};var s=n.isFunction=function(e){return void 0!==e&&"[object Function]"===Object.prototype.toString.call(e)};n.isString=function(e){return void 0!==e&&"[object String]"===Object.prototype.toString.call(e)},n.isDecimal=function(e){return!isNaN(e)&&parseFloat(e)===parseInt(e,10)},n.isEmpty=function(e){return null===e||""===e||void 0===e||Array.isArray(e)&&0===e.length||"number"==typeof e&&isNaN(e)},n.hasMethods=function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];var i=!0,a=!1,o=void 0;try{for(var l,c=n[Symbol.iterator]();!(i=(l=c.next()).done);i=!0){var u=l.value;if(s(e[u]))return!1}}catch(e){a=!0,o=e}finally{try{!i&&c.return&&c.return()}finally{if(a)throw o}}return!0};var l=n.createRandomToken=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:32,n=void 0,r="";for(n=0;n<e;n++)r+=(Math.random()*t|0).toString(t);return r};n.newTag=function(){return l(10)},n.newUUID=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){var t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)}))},n.hostType=function(e){if(e)return-1!==(e=o.parse(e,"host"))?e.host_type:void 0};var c=n.escapeUser=function(e){return encodeURIComponent(decodeURIComponent(e)).replace(/%3A/gi,":").replace(/%2B/gi,"+").replace(/%3F/gi,"?").replace(/%2F/gi,"/")};n.normalizeTarget=function(e,t){if(e){if(e instanceof a)return e;if("string"==typeof e){var n=e.split("@"),r=void 0,o=void 0;switch(n.length){case 1:if(!t)return;r=e,o=t;break;case 2:r=n[0],o=n[1];break;default:r=n.slice(0,n.length-1).join("@"),o=n[n.length-1]}r=r.replace(/^(sips?|tel):/i,""),/^[-.()]*\+?[0-9\-.()]+$/.test(r)&&(r=r.replace(/[-.()]/g,"")),e=i.SIP+":"+c(r)+"@"+o;var s;return(s=a.parse(e))?s:void 0}}else;},n.headerize=function(e){var t={"Call-Id":"Call-ID",Cseq:"CSeq","Www-Authenticate":"WWW-Authenticate"},n=e.toLowerCase().replace(/_/g,"-").split("-"),r="",i=n.length,a=void 0;for(a=0;a<i;a++)0!==a&&(r+="-"),r+=n[a].charAt(0).toUpperCase()+n[a].substring(1);return t[r]&&(r=t[r]),r},n.sipErrorCause=function(e){for(var t in i.SIP_ERROR_CAUSES)if(-1!==i.SIP_ERROR_CAUSES[t].indexOf(e))return i.causes[t];return i.causes.SIP_FAILURE_CODE},n.getRandomTestNetIP=function(){return"192.0.2."+(e=1,t=254,Math.floor(Math.random()*(t-e+1)+e));var e,t},n.calculateMD5=function(e){function t(e,t){return e<<t|e>>>32-t}function n(e,t){var n=2147483648&e,r=2147483648&t,i=1073741824&e,a=1073741824&t,o=(1073741823&e)+(1073741823&t);return i&a?2147483648^o^n^r:i|a?1073741824&o?3221225472^o^n^r:1073741824^o^n^r:o^n^r}function r(e,r,i,a,o,s,l){return e=n(e,n(n(function(e,t,n){return e&t|~e&n}(r,i,a),o),l)),n(t(e,s),r)}function i(e,r,i,a,o,s,l){return e=n(e,n(n(function(e,t,n){return e&n|t&~n}(r,i,a),o),l)),n(t(e,s),r)}function a(e,r,i,a,o,s,l){return e=n(e,n(n(function(e,t,n){return e^t^n}(r,i,a),o),l)),n(t(e,s),r)}function o(e,r,i,a,o,s,l){return e=n(e,n(n(function(e,t,n){return t^(e|~n)}(r,i,a),o),l)),n(t(e,s),r)}function s(e){var t="",n="",r=void 0;for(r=0;r<=3;r++)t+=(n="0"+(e>>>8*r&255).toString(16)).substr(n.length-2,2);return t}var l,c=void 0,u=void 0,f=void 0,d=void 0,h=void 0,p=void 0,m=void 0,g=void 0,_=void 0;for(l=function(e){for(var t=void 0,n=e.length,r=n+8,i=16*((r-r%64)/64+1),a=new Array(i-1),o=0,s=0;s<n;)o=s%4*8,a[t=(s-s%4)/4]=a[t]|e.charCodeAt(s)<<o,s++;return o=s%4*8,a[t=(s-s%4)/4]=a[t]|128<<o,a[i-2]=n<<3,a[i-1]=n>>>29,a}(e=function(e){e=e.replace(/\r\n/g,"\n");for(var t="",n=0;n<e.length;n++){var r=e.charCodeAt(n);r<128?t+=String.fromCharCode(r):r>127&&r<2048?(t+=String.fromCharCode(r>>6|192),t+=String.fromCharCode(63&r|128)):(t+=String.fromCharCode(r>>12|224),t+=String.fromCharCode(r>>6&63|128),t+=String.fromCharCode(63&r|128))}return t}(e)),p=1732584193,m=4023233417,g=2562383102,_=271733878,c=0;c<l.length;c+=16)u=p,f=m,d=g,h=_,p=r(p,m,g,_,l[c+0],7,3614090360),_=r(_,p,m,g,l[c+1],12,3905402710),g=r(g,_,p,m,l[c+2],17,606105819),m=r(m,g,_,p,l[c+3],22,3250441966),p=r(p,m,g,_,l[c+4],7,4118548399),_=r(_,p,m,g,l[c+5],12,1200080426),g=r(g,_,p,m,l[c+6],17,2821735955),m=r(m,g,_,p,l[c+7],22,4249261313),p=r(p,m,g,_,l[c+8],7,1770035416),_=r(_,p,m,g,l[c+9],12,2336552879),g=r(g,_,p,m,l[c+10],17,4294925233),m=r(m,g,_,p,l[c+11],22,2304563134),p=r(p,m,g,_,l[c+12],7,1804603682),_=r(_,p,m,g,l[c+13],12,4254626195),g=r(g,_,p,m,l[c+14],17,2792965006),p=i(p,m=r(m,g,_,p,l[c+15],22,1236535329),g,_,l[c+1],5,4129170786),_=i(_,p,m,g,l[c+6],9,3225465664),g=i(g,_,p,m,l[c+11],14,643717713),m=i(m,g,_,p,l[c+0],20,3921069994),p=i(p,m,g,_,l[c+5],5,3593408605),_=i(_,p,m,g,l[c+10],9,38016083),g=i(g,_,p,m,l[c+15],14,3634488961),m=i(m,g,_,p,l[c+4],20,3889429448),p=i(p,m,g,_,l[c+9],5,568446438),_=i(_,p,m,g,l[c+14],9,3275163606),g=i(g,_,p,m,l[c+3],14,4107603335),m=i(m,g,_,p,l[c+8],20,1163531501),p=i(p,m,g,_,l[c+13],5,2850285829),_=i(_,p,m,g,l[c+2],9,4243563512),g=i(g,_,p,m,l[c+7],14,1735328473),p=a(p,m=i(m,g,_,p,l[c+12],20,2368359562),g,_,l[c+5],4,4294588738),_=a(_,p,m,g,l[c+8],11,2272392833),g=a(g,_,p,m,l[c+11],16,1839030562),m=a(m,g,_,p,l[c+14],23,4259657740),p=a(p,m,g,_,l[c+1],4,2763975236),_=a(_,p,m,g,l[c+4],11,1272893353),g=a(g,_,p,m,l[c+7],16,4139469664),m=a(m,g,_,p,l[c+10],23,3200236656),p=a(p,m,g,_,l[c+13],4,681279174),_=a(_,p,m,g,l[c+0],11,3936430074),g=a(g,_,p,m,l[c+3],16,3572445317),m=a(m,g,_,p,l[c+6],23,76029189),p=a(p,m,g,_,l[c+9],4,3654602809),_=a(_,p,m,g,l[c+12],11,3873151461),g=a(g,_,p,m,l[c+15],16,530742520),p=o(p,m=a(m,g,_,p,l[c+2],23,3299628645),g,_,l[c+0],6,4096336452),_=o(_,p,m,g,l[c+7],10,1126891415),g=o(g,_,p,m,l[c+14],15,2878612391),m=o(m,g,_,p,l[c+5],21,4237533241),p=o(p,m,g,_,l[c+12],6,1700485571),_=o(_,p,m,g,l[c+3],10,2399980690),g=o(g,_,p,m,l[c+10],15,4293915773),m=o(m,g,_,p,l[c+1],21,2240044497),p=o(p,m,g,_,l[c+8],6,1873313359),_=o(_,p,m,g,l[c+15],10,4264355552),g=o(g,_,p,m,l[c+6],15,2734768916),m=o(m,g,_,p,l[c+13],21,1309151649),p=o(p,m,g,_,l[c+4],6,4149444226),_=o(_,p,m,g,l[c+11],10,3174756917),g=o(g,_,p,m,l[c+2],15,718787259),m=o(m,g,_,p,l[c+9],21,3951481745),p=n(p,u),m=n(m,f),g=n(g,d),_=n(_,h);return(s(p)+s(m)+s(g)+s(_)).toLowerCase()},n.closeMediaStream=function(e){if(e)try{var t=void 0;if(e.getTracks){t=e.getTracks();var n=!0,i=!1,a=void 0;try{for(var o,s=t[Symbol.iterator]();!(n=(o=s.next()).done);n=!0){o.value.stop()}}catch(e){i=!0,a=e}finally{try{!n&&s.return&&s.return()}finally{if(i)throw a}}}else{t=e.getAudioTracks();var l=!0,c=!1,u=void 0;try{for(var f,d=t[Symbol.iterator]();!(l=(f=d.next()).done);l=!0){f.value.stop()}}catch(e){c=!0,u=e}finally{try{!l&&d.return&&d.return()}finally{if(c)throw u}}t=e.getVideoTracks();var h=!0,p=!1,m=void 0;try{for(var g,_=t[Symbol.iterator]();!(h=(g=_.next()).done);h=!0){g.value.stop()}}catch(e){p=!0,m=e}finally{try{!h&&_.return&&_.return()}finally{if(p)throw m}}}}catch(t){"function"!=typeof e.stop&&"object"!==r(e.stop)||e.stop()}},n.cloneArray=function(e){return e&&e.slice()||[]}},{"./Constants":2,"./Grammar":7,"./URI":25}],27:[function(e,t,n){"use strict";var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}();var i=e("./Grammar"),a=e("debug")("JsSIP:WebSocketInterface"),o=e("debug")("JsSIP:ERROR:WebSocketInterface");o.log=console.warn.bind(console),t.exports=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),a('new() [url:"%s"]',t),this._url=t,this._sip_uri=null,this._via_transport=null,this._ws=null;var n=i.parse(t,"absoluteURI");if(-1===n)throw o("invalid WebSocket URI: "+t),new TypeError("Invalid argument: "+t);if("wss"!==n.scheme&&"ws"!==n.scheme)throw o("invalid WebSocket URI scheme: "+n.scheme),new TypeError("Invalid argument: "+t);this._sip_uri="sip:"+n.host+(n.port?":"+n.port:"")+";transport=ws",this._via_transport=n.scheme.toUpperCase()}return r(e,[{key:"connect",value:function(){if(a("connect()"),this.isConnected())a("WebSocket "+this._url+" is already connected");else if(this.isConnecting())a("WebSocket "+this._url+" is connecting");else{this._ws&&this.disconnect(),a("connecting to WebSocket "+this._url);try{this._ws=new WebSocket(this._url,"sip"),this._ws.binaryType="arraybuffer",this._ws.onopen=this._onOpen.bind(this),this._ws.onclose=this._onClose.bind(this),this._ws.onmessage=this._onMessage.bind(this),this._ws.onerror=this._onError.bind(this)}catch(e){this._onError(e)}}}},{key:"disconnect",value:function(){a("disconnect()"),this._ws&&(this._ws.onopen=function(){},this._ws.onclose=function(){},this._ws.onmessage=function(){},this._ws.onerror=function(){},this._ws.close(),this._ws=null)}},{key:"send",value:function(e){return a("send()"),this.isConnected()?(this._ws.send(e),!0):(o("unable to send message, WebSocket is not open"),!1)}},{key:"isConnected",value:function(){return this._ws&&this._ws.readyState===this._ws.OPEN}},{key:"isConnecting",value:function(){return this._ws&&this._ws.readyState===this._ws.CONNECTING}},{key:"_onOpen",value:function(){a("WebSocket "+this._url+" connected"),this.onconnect()}},{key:"_onClose",value:function(e){var t=e.wasClean,n=e.code,r=e.reason;a("WebSocket "+this._url+" closed"),!1===t&&a("WebSocket abrupt disconnection");var i={socket:this,error:!t,code:n,reason:r};this.ondisconnect(i)}},{key:"_onMessage",value:function(e){var t=e.data;a("received WebSocket message"),this.ondata(t)}},{key:"_onError",value:function(e){o("WebSocket "+this._url+" error: "+e)}},{key:"via_transport",get:function(){return this._via_transport},set:function(e){this._via_transport=e.toUpperCase()}},{key:"sip_uri",get:function(){return this._sip_uri}},{key:"url",get:function(){return this._url}}]),e}()},{"./Grammar":7,debug:29}],28:[function(e,t,n){"use strict";var r=e("./Constants"),i=e("./SIPMessage"),a=e("./Utils"),o=e("debug")("JsSIP:sanityCheck"),s=[function(){var e=!0,t=!1,n=void 0;try{for(var r,i=["from","to","call_id","cseq","via"][Symbol.iterator]();!(e=(r=i.next()).done);e=!0){var a=r.value;if(!u.hasHeader(a))return o("missing mandatory header field : "+a+", dropping the response"),!1}}catch(e){t=!0,n=e}finally{try{!e&&i.return&&i.return()}finally{if(t)throw n}}}],l=[function(){if("sip"!==u.s("to").uri.scheme)return h(416),!1},function(){if(!u.to_tag&&u.call_id.substr(0,5)===f.configuration.jssip_id)return h(482),!1},function(){var e=a.str_utf8_length(u.body),t=u.getHeader("content-length");if(e<t)return h(400),!1},function(){var e=u.from_tag,t=u.call_id,n=u.cseq,i=void 0;if(u.to_tag)return;if(u.method===r.INVITE){if(f._transactions.ist[u.via_branch])return!1;for(var a in f._transactions.ist)if(Object.prototype.hasOwnProperty.call(f._transactions.ist,a)&&(i=f._transactions.ist[a]).request.from_tag===e&&i.request.call_id===t&&i.request.cseq===n)return h(482),!1}else{if(f._transactions.nist[u.via_branch])return!1;for(var o in f._transactions.nist)if(Object.prototype.hasOwnProperty.call(f._transactions.nist,o)&&(i=f._transactions.nist[o]).request.from_tag===e&&i.request.call_id===t&&i.request.cseq===n)return h(482),!1}}],c=[function(){if(u.getHeaders("via").length>1)return o("more than one Via header field present in the response, dropping the response"),!1},function(){var e=a.str_utf8_length(u.body),t=u.getHeader("content-length");if(e<t)return o("message body length is lower than the value in Content-Length header field, dropping the response"),!1}],u=void 0,f=void 0,d=void 0;function h(e){var t=u.getHeaders("via"),n=void 0,i="SIP/2.0 "+e+" "+r.REASON_PHRASE[e]+"\r\n",o=!0,s=!1,l=void 0;try{for(var c,f=t[Symbol.iterator]();!(o=(c=f.next()).done);o=!0){i+="Via: "+c.value+"\r\n"}}catch(e){s=!0,l=e}finally{try{!o&&f.return&&f.return()}finally{if(s)throw l}}n=u.getHeader("To"),u.to_tag||(n+=";tag="+a.newTag()),i+="To: "+n+"\r\n",i+="From: "+u.getHeader("From")+"\r\n",i+="Call-ID: "+u.call_id+"\r\n",i+="CSeq: "+u.cseq+" "+u.method+"\r\n",i+="\r\n",d.send(i)}t.exports=function(e,t,n){u=e,f=t,d=n;var r=!0,a=!1,o=void 0;try{for(var h,p=s[Symbol.iterator]();!(r=(h=p.next()).done);r=!0){if(!1===(0,h.value)())return!1}}catch(e){a=!0,o=e}finally{try{!r&&p.return&&p.return()}finally{if(a)throw o}}if(u instanceof i.IncomingRequest){var m=!0,g=!1,_=void 0;try{for(var b,v=l[Symbol.iterator]();!(m=(b=v.next()).done);m=!0){if(!1===(0,b.value)())return!1}}catch(e){g=!0,_=e}finally{try{!m&&v.return&&v.return()}finally{if(g)throw _}}}else if(u instanceof i.IncomingResponse){var y=!0,w=!1,C=void 0;try{for(var A,S=c[Symbol.iterator]();!(y=(A=S.next()).done);y=!0){if(!1===(0,A.value)())return!1}}catch(e){w=!0,C=e}finally{try{!y&&S.return&&S.return()}finally{if(w)throw C}}}return!0}},{"./Constants":2,"./SIPMessage":19,"./Utils":26,debug:29}],29:[function(e,t,n){(function(r){function i(){var e;try{e=n.storage.debug}catch(e){}return!e&&void 0!==r&&"env"in r&&(e=r.env.DEBUG),e}(n=t.exports=e("./debug")).log=function(){return"object"==typeof console&&console.log&&Function.prototype.apply.call(console.log,console,arguments)},n.formatArgs=function(e){var t=this.useColors;if(e[0]=(t?"%c":"")+this.namespace+(t?" %c":" ")+e[0]+(t?"%c ":" ")+"+"+n.humanize(this.diff),!t)return;var r="color: "+this.color;e.splice(1,0,r,"color: inherit");var i=0,a=0;e[0].replace(/%[a-zA-Z%]/g,(function(e){"%%"!==e&&(i++,"%c"===e&&(a=i))})),e.splice(a,0,r)},n.save=function(e){try{null==e?n.storage.removeItem("debug"):n.storage.debug=e}catch(e){}},n.load=i,n.useColors=function(){if("undefined"!=typeof window&&window.process&&"renderer"===window.process.type)return!0;if("undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;return"undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)},n.storage="undefined"!=typeof chrome&&void 0!==chrome.storage?chrome.storage.local:function(){try{return window.localStorage}catch(e){}}(),n.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],n.formatters.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}},n.enable(i())}).call(this,e("_process"))},{"./debug":30,_process:33}],30:[function(e,t,n){function r(e){var t;function r(){if(r.enabled){var e=r,i=+new Date,a=i-(t||i);e.diff=a,e.prev=t,e.curr=i,t=i;for(var o=new Array(arguments.length),s=0;s<o.length;s++)o[s]=arguments[s];o[0]=n.coerce(o[0]),"string"!=typeof o[0]&&o.unshift("%O");var l=0;o[0]=o[0].replace(/%([a-zA-Z%])/g,(function(t,r){if("%%"===t)return t;l++;var i=n.formatters[r];if("function"==typeof i){var a=o[l];t=i.call(e,a),o.splice(l,1),l--}return t})),n.formatArgs.call(e,o);var c=r.log||n.log||console.log.bind(console);c.apply(e,o)}}return r.namespace=e,r.enabled=n.enabled(e),r.useColors=n.useColors(),r.color=function(e){var t,r=0;for(t in e)r=(r<<5)-r+e.charCodeAt(t),r|=0;return n.colors[Math.abs(r)%n.colors.length]}(e),r.destroy=i,"function"==typeof n.init&&n.init(r),n.instances.push(r),r}function i(){var e=n.instances.indexOf(this);return-1!==e&&(n.instances.splice(e,1),!0)}(n=t.exports=r.debug=r.default=r).coerce=function(e){return e instanceof Error?e.stack||e.message:e},n.disable=function(){n.enable("")},n.enable=function(e){var t;n.save(e),n.names=[],n.skips=[];var r=("string"==typeof e?e:"").split(/[\s,]+/),i=r.length;for(t=0;t<i;t++)r[t]&&("-"===(e=r[t].replace(/\*/g,".*?"))[0]?n.skips.push(new RegExp("^"+e.substr(1)+"$")):n.names.push(new RegExp("^"+e+"$")));for(t=0;t<n.instances.length;t++){var a=n.instances[t];a.enabled=n.enabled(a.namespace)}},n.enabled=function(e){if("*"===e[e.length-1])return!0;var t,r;for(t=0,r=n.skips.length;t<r;t++)if(n.skips[t].test(e))return!1;for(t=0,r=n.names.length;t<r;t++)if(n.names[t].test(e))return!0;return!1},n.humanize=e("ms"),n.instances=[],n.names=[],n.skips=[],n.formatters={}},{ms:32}],31:[function(e,t,n){function r(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}function i(e){return"function"==typeof e}function a(e){return"object"==typeof e&&null!==e}function o(e){return void 0===e}t.exports=r,r.EventEmitter=r,r.prototype._events=void 0,r.prototype._maxListeners=void 0,r.defaultMaxListeners=10,r.prototype.setMaxListeners=function(e){if("number"!=typeof e||e<0||isNaN(e))throw TypeError("n must be a positive number");return this._maxListeners=e,this},r.prototype.emit=function(e){var t,n,r,s,l,c;if(this._events||(this._events={}),"error"===e&&(!this._events.error||a(this._events.error)&&!this._events.error.length)){if((t=arguments[1])instanceof Error)throw t;var u=new Error('Uncaught, unspecified "error" event. ('+t+")");throw u.context=t,u}if(o(n=this._events[e]))return!1;if(i(n))switch(arguments.length){case 1:n.call(this);break;case 2:n.call(this,arguments[1]);break;case 3:n.call(this,arguments[1],arguments[2]);break;default:s=Array.prototype.slice.call(arguments,1),n.apply(this,s)}else if(a(n))for(s=Array.prototype.slice.call(arguments,1),r=(c=n.slice()).length,l=0;l<r;l++)c[l].apply(this,s);return!0},r.prototype.addListener=function(e,t){var n;if(!i(t))throw TypeError("listener must be a function");return this._events||(this._events={}),this._events.newListener&&this.emit("newListener",e,i(t.listener)?t.listener:t),this._events[e]?a(this._events[e])?this._events[e].push(t):this._events[e]=[this._events[e],t]:this._events[e]=t,a(this._events[e])&&!this._events[e].warned&&(n=o(this._maxListeners)?r.defaultMaxListeners:this._maxListeners)&&n>0&&this._events[e].length>n&&(this._events[e].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[e].length),"function"==typeof console.trace&&console.trace()),this},r.prototype.on=r.prototype.addListener,r.prototype.once=function(e,t){if(!i(t))throw TypeError("listener must be a function");var n=!1;function r(){this.removeListener(e,r),n||(n=!0,t.apply(this,arguments))}return r.listener=t,this.on(e,r),this},r.prototype.removeListener=function(e,t){var n,r,o,s;if(!i(t))throw TypeError("listener must be a function");if(!this._events||!this._events[e])return this;if(o=(n=this._events[e]).length,r=-1,n===t||i(n.listener)&&n.listener===t)delete this._events[e],this._events.removeListener&&this.emit("removeListener",e,t);else if(a(n)){for(s=o;s-- >0;)if(n[s]===t||n[s].listener&&n[s].listener===t){r=s;break}if(r<0)return this;1===n.length?(n.length=0,delete this._events[e]):n.splice(r,1),this._events.removeListener&&this.emit("removeListener",e,t)}return this},r.prototype.removeAllListeners=function(e){var t,n;if(!this._events)return this;if(!this._events.removeListener)return 0===arguments.length?this._events={}:this._events[e]&&delete this._events[e],this;if(0===arguments.length){for(t in this._events)"removeListener"!==t&&this.removeAllListeners(t);return this.removeAllListeners("removeListener"),this._events={},this}if(i(n=this._events[e]))this.removeListener(e,n);else if(n)for(;n.length;)this.removeListener(e,n[n.length-1]);return delete this._events[e],this},r.prototype.listeners=function(e){return this._events&&this._events[e]?i(this._events[e])?[this._events[e]]:this._events[e].slice():[]},r.prototype.listenerCount=function(e){if(this._events){var t=this._events[e];if(i(t))return 1;if(t)return t.length}return 0},r.listenerCount=function(e,t){return e.listenerCount(t)}},{}],32:[function(e,t,n){var r=1e3,i=6e4,a=60*i,o=24*a;function s(e,t,n){if(!(e<t))return e<1.5*t?Math.floor(e/t)+" "+n:Math.ceil(e/t)+" "+n+"s"}t.exports=function(e,t){t=t||{};var n,l=typeof e;if("string"===l&&e.length>0)return function(e){if((e=String(e)).length>100)return;var t=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(e);if(!t)return;var n=parseFloat(t[1]);switch((t[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return 315576e5*n;case"days":case"day":case"d":return n*o;case"hours":case"hour":case"hrs":case"hr":case"h":return n*a;case"minutes":case"minute":case"mins":case"min":case"m":return n*i;case"seconds":case"second":case"secs":case"sec":case"s":return n*r;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return n;default:return}}(e);if("number"===l&&!1===isNaN(e))return t.long?s(n=e,o,"day")||s(n,a,"hour")||s(n,i,"minute")||s(n,r,"second")||n+" ms":function(e){if(e>=o)return Math.round(e/o)+"d";if(e>=a)return Math.round(e/a)+"h";if(e>=i)return Math.round(e/i)+"m";if(e>=r)return Math.round(e/r)+"s";return e+"ms"}(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))}},{}],33:[function(e,t,n){var r,i,a=t.exports={};function o(){throw new Error("setTimeout has not been defined")}function s(){throw new Error("clearTimeout has not been defined")}function l(e){if(r===setTimeout)return setTimeout(e,0);if((r===o||!r)&&setTimeout)return r=setTimeout,setTimeout(e,0);try{return r(e,0)}catch(t){try{return r.call(null,e,0)}catch(t){return r.call(this,e,0)}}}!function(){try{r="function"==typeof setTimeout?setTimeout:o}catch(e){r=o}try{i="function"==typeof clearTimeout?clearTimeout:s}catch(e){i=s}}();var c,u=[],f=!1,d=-1;function h(){f&&c&&(f=!1,c.length?u=c.concat(u):d=-1,u.length&&p())}function p(){if(!f){var e=l(h);f=!0;for(var t=u.length;t;){for(c=u,u=[];++d<t;)c&&c[d].run();d=-1,t=u.length}c=null,f=!1,function(e){if(i===clearTimeout)return clearTimeout(e);if((i===s||!i)&&clearTimeout)return i=clearTimeout,clearTimeout(e);try{i(e)}catch(t){try{return i.call(null,e)}catch(t){return i.call(this,e)}}}(e)}}function m(e,t){this.fun=e,this.array=t}function g(){}a.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];u.push(new m(e,t)),1!==u.length||f||l(p)},m.prototype.run=function(){this.fun.apply(null,this.array)},a.title="browser",a.browser=!0,a.env={},a.argv=[],a.version="",a.versions={},a.on=g,a.addListener=g,a.once=g,a.off=g,a.removeListener=g,a.removeAllListeners=g,a.emit=g,a.prependListener=g,a.prependOnceListener=g,a.listeners=function(e){return[]},a.binding=function(e){throw new Error("process.binding is not supported")},a.cwd=function(){return"/"},a.chdir=function(e){throw new Error("process.chdir is not supported")},a.umask=function(){return 0}},{}],34:[function(e,t,n){"use strict";var r=e("sdp");function i(e,t,n,i,a){var o=r.writeRtpDescription(e.kind,t);if(o+=r.writeIceParameters(e.iceGatherer.getLocalParameters()),o+=r.writeDtlsParameters(e.dtlsTransport.getLocalParameters(),"offer"===n?"actpass":a||"active"),o+="a=mid:"+e.mid+"\r\n",e.rtpSender&&e.rtpReceiver?o+="a=sendrecv\r\n":e.rtpSender?o+="a=sendonly\r\n":e.rtpReceiver?o+="a=recvonly\r\n":o+="a=inactive\r\n",e.rtpSender){var s="msid:"+(i?i.id:"-")+" "+e.rtpSender.track.id+"\r\n";o+="a="+s,o+="a=ssrc:"+e.sendEncodingParameters[0].ssrc+" "+s,e.sendEncodingParameters[0].rtx&&(o+="a=ssrc:"+e.sendEncodingParameters[0].rtx.ssrc+" "+s,o+="a=ssrc-group:FID "+e.sendEncodingParameters[0].ssrc+" "+e.sendEncodingParameters[0].rtx.ssrc+"\r\n")}return o+="a=ssrc:"+e.sendEncodingParameters[0].ssrc+" cname:"+r.localCName+"\r\n",e.rtpSender&&e.sendEncodingParameters[0].rtx&&(o+="a=ssrc:"+e.sendEncodingParameters[0].rtx.ssrc+" cname:"+r.localCName+"\r\n"),o}function a(e,t){var n={codecs:[],headerExtensions:[],fecMechanisms:[]},r=function(e,t){e=parseInt(e,10);for(var n=0;n<t.length;n++)if(t[n].payloadType===e||t[n].preferredPayloadType===e)return t[n]},i=function(e,t,n,i){var a=r(e.parameters.apt,n),o=r(t.parameters.apt,i);return a&&o&&a.name.toLowerCase()===o.name.toLowerCase()};return e.codecs.forEach((function(r){for(var a=0;a<t.codecs.length;a++){var o=t.codecs[a];if(r.name.toLowerCase()===o.name.toLowerCase()&&r.clockRate===o.clockRate){if("rtx"===r.name.toLowerCase()&&r.parameters&&o.parameters.apt&&!i(r,o,e.codecs,t.codecs))continue;(o=JSON.parse(JSON.stringify(o))).numChannels=Math.min(r.numChannels,o.numChannels),n.codecs.push(o),o.rtcpFeedback=o.rtcpFeedback.filter((function(e){for(var t=0;t<r.rtcpFeedback.length;t++)if(r.rtcpFeedback[t].type===e.type&&r.rtcpFeedback[t].parameter===e.parameter)return!0;return!1}));break}}})),e.headerExtensions.forEach((function(e){for(var r=0;r<t.headerExtensions.length;r++){var i=t.headerExtensions[r];if(e.uri===i.uri){n.headerExtensions.push(i);break}}})),n}function o(e,t,n){return-1!=={offer:{setLocalDescription:["stable","have-local-offer"],setRemoteDescription:["stable","have-remote-offer"]},answer:{setLocalDescription:["have-remote-offer","have-local-pranswer"],setRemoteDescription:["have-local-offer","have-remote-pranswer"]}}[t][e].indexOf(n)}function s(e,t){var n=e.getRemoteCandidates().find((function(e){return t.foundation===e.foundation&&t.ip===e.ip&&t.port===e.port&&t.priority===e.priority&&t.protocol===e.protocol&&t.type===e.type}));return n||e.addRemoteCandidate(t),!n}function l(e,t){var n=new Error(t);return n.name=e,n}t.exports=function(e,t){function n(t,n){n.addTrack(t),n.dispatchEvent(new e.MediaStreamTrackEvent("addtrack",{track:t}))}function c(t,n,r,i){var a=new Event("track");a.track=n,a.receiver=r,a.transceiver={receiver:r},a.streams=i,e.setTimeout((function(){t._dispatchEvent("track",a)}))}var u=function(n){var i=this,a=document.createDocumentFragment();if(["addEventListener","removeEventListener","dispatchEvent"].forEach((function(e){i[e]=a[e].bind(a)})),this.canTrickleIceCandidates=null,this.needNegotiation=!1,this.localStreams=[],this.remoteStreams=[],this.localDescription=null,this.remoteDescription=null,this.signalingState="stable",this.iceConnectionState="new",this.iceGatheringState="new",n=JSON.parse(JSON.stringify(n||{})),this.usingBundle="max-bundle"===n.bundlePolicy,"negotiate"===n.rtcpMuxPolicy)throw l("NotSupportedError","rtcpMuxPolicy 'negotiate' is not supported");switch(n.rtcpMuxPolicy||(n.rtcpMuxPolicy="require"),n.iceTransportPolicy){case"all":case"relay":break;default:n.iceTransportPolicy="all"}switch(n.bundlePolicy){case"balanced":case"max-compat":case"max-bundle":break;default:n.bundlePolicy="balanced"}if(n.iceServers=function(e,t){var n=!1;return(e=JSON.parse(JSON.stringify(e))).filter((function(e){if(e&&(e.urls||e.url)){var r=e.urls||e.url;e.url&&!e.urls&&console.warn("RTCIceServer.url is deprecated! Use urls instead.");var i="string"==typeof r;return i&&(r=[r]),r=r.filter((function(e){return 0===e.indexOf("turn:")&&-1!==e.indexOf("transport=udp")&&-1===e.indexOf("turn:[")&&!n?(n=!0,!0):0===e.indexOf("stun:")&&t>=14393&&-1===e.indexOf("?transport=udp")})),delete e.url,e.urls=i?r[0]:r,!!r.length}}))}(n.iceServers||[],t),this._iceGatherers=[],n.iceCandidatePoolSize)for(var o=n.iceCandidatePoolSize;o>0;o--)this._iceGatherers.push(new e.RTCIceGatherer({iceServers:n.iceServers,gatherPolicy:n.iceTransportPolicy}));else n.iceCandidatePoolSize=0;this._config=n,this.transceivers=[],this._sdpSessionId=r.generateSessionId(),this._sdpSessionVersion=0,this._dtlsRole=void 0,this._isClosed=!1};u.prototype.onicecandidate=null,u.prototype.onaddstream=null,u.prototype.ontrack=null,u.prototype.onremovestream=null,u.prototype.onsignalingstatechange=null,u.prototype.oniceconnectionstatechange=null,u.prototype.onicegatheringstatechange=null,u.prototype.onnegotiationneeded=null,u.prototype.ondatachannel=null,u.prototype._dispatchEvent=function(e,t){this._isClosed||(this.dispatchEvent(t),"function"==typeof this["on"+e]&&this["on"+e](t))},u.prototype._emitGatheringStateChange=function(){var e=new Event("icegatheringstatechange");this._dispatchEvent("icegatheringstatechange",e)},u.prototype.getConfiguration=function(){return this._config},u.prototype.getLocalStreams=function(){return this.localStreams},u.prototype.getRemoteStreams=function(){return this.remoteStreams},u.prototype._createTransceiver=function(e){var t=this.transceivers.length>0,n={track:null,iceGatherer:null,iceTransport:null,dtlsTransport:null,localCapabilities:null,remoteCapabilities:null,rtpSender:null,rtpReceiver:null,kind:e,mid:null,sendEncodingParameters:null,recvEncodingParameters:null,stream:null,associatedRemoteMediaStreams:[],wantReceive:!0};if(this.usingBundle&&t)n.iceTransport=this.transceivers[0].iceTransport,n.dtlsTransport=this.transceivers[0].dtlsTransport;else{var r=this._createIceAndDtlsTransports();n.iceTransport=r.iceTransport,n.dtlsTransport=r.dtlsTransport}return this.transceivers.push(n),n},u.prototype.addTrack=function(t,n){if(this._isClosed)throw l("InvalidStateError","Attempted to call addTrack on a closed peerconnection.");var r;if(this.transceivers.find((function(e){return e.track===t})))throw l("InvalidAccessError","Track already exists.");for(var i=0;i<this.transceivers.length;i++)this.transceivers[i].track||this.transceivers[i].kind!==t.kind||(r=this.transceivers[i]);return r||(r=this._createTransceiver(t.kind)),this._maybeFireNegotiationNeeded(),-1===this.localStreams.indexOf(n)&&this.localStreams.push(n),r.track=t,r.stream=n,r.rtpSender=new e.RTCRtpSender(t,r.dtlsTransport),r.rtpSender},u.prototype.addStream=function(e){var n=this;if(t>=15025)e.getTracks().forEach((function(t){n.addTrack(t,e)}));else{var r=e.clone();e.getTracks().forEach((function(e,t){var n=r.getTracks()[t];e.addEventListener("enabled",(function(e){n.enabled=e.enabled}))})),r.getTracks().forEach((function(e){n.addTrack(e,r)}))}},u.prototype.removeTrack=function(t){if(this._isClosed)throw l("InvalidStateError","Attempted to call removeTrack on a closed peerconnection.");if(!(t instanceof e.RTCRtpSender))throw new TypeError("Argument 1 of RTCPeerConnection.removeTrack does not implement interface RTCRtpSender.");var n=this.transceivers.find((function(e){return e.rtpSender===t}));if(!n)throw l("InvalidAccessError","Sender was not created by this connection.");var r=n.stream;n.rtpSender.stop(),n.rtpSender=null,n.track=null,n.stream=null,-1===this.transceivers.map((function(e){return e.stream})).indexOf(r)&&this.localStreams.indexOf(r)>-1&&this.localStreams.splice(this.localStreams.indexOf(r),1),this._maybeFireNegotiationNeeded()},u.prototype.removeStream=function(e){var t=this;e.getTracks().forEach((function(e){var n=t.getSenders().find((function(t){return t.track===e}));n&&t.removeTrack(n)}))},u.prototype.getSenders=function(){return this.transceivers.filter((function(e){return!!e.rtpSender})).map((function(e){return e.rtpSender}))},u.prototype.getReceivers=function(){return this.transceivers.filter((function(e){return!!e.rtpReceiver})).map((function(e){return e.rtpReceiver}))},u.prototype._createIceGatherer=function(t,n){var r=this;if(n&&t>0)return this.transceivers[0].iceGatherer;if(this._iceGatherers.length)return this._iceGatherers.shift();var i=new e.RTCIceGatherer({iceServers:this._config.iceServers,gatherPolicy:this._config.iceTransportPolicy});return Object.defineProperty(i,"state",{value:"new",writable:!0}),this.transceivers[t].bufferedCandidateEvents=[],this.transceivers[t].bufferCandidates=function(e){var n=!e.candidate||0===Object.keys(e.candidate).length;i.state=n?"completed":"gathering",null!==r.transceivers[t].bufferedCandidateEvents&&r.transceivers[t].bufferedCandidateEvents.push(e)},i.addEventListener("localcandidate",this.transceivers[t].bufferCandidates),i},u.prototype._gather=function(t,n){var i=this,a=this.transceivers[n].iceGatherer;if(!a.onlocalcandidate){var o=this.transceivers[n].bufferedCandidateEvents;this.transceivers[n].bufferedCandidateEvents=null,a.removeEventListener("localcandidate",this.transceivers[n].bufferCandidates),a.onlocalcandidate=function(e){if(!(i.usingBundle&&n>0)){var o=new Event("icecandidate");o.candidate={sdpMid:t,sdpMLineIndex:n};var s=e.candidate,l=!s||0===Object.keys(s).length;if(l)"new"!==a.state&&"gathering"!==a.state||(a.state="completed");else{"new"===a.state&&(a.state="gathering"),s.component=1;var c=r.writeCandidate(s);o.candidate=Object.assign(o.candidate,r.parseCandidate(c)),o.candidate.candidate=c}var u=r.splitSections(i.localDescription.sdp);u[o.candidate.sdpMLineIndex+1]+=l?"a=end-of-candidates\r\n":"a="+o.candidate.candidate+"\r\n",i.localDescription.sdp=u.join("");var f=i.transceivers.every((function(e){return e.iceGatherer&&"completed"===e.iceGatherer.state}));"gathering"!==i.iceGatheringState&&(i.iceGatheringState="gathering",i._emitGatheringStateChange()),l||i._dispatchEvent("icecandidate",o),f&&(i._dispatchEvent("icecandidate",new Event("icecandidate")),i.iceGatheringState="complete",i._emitGatheringStateChange())}},e.setTimeout((function(){o.forEach((function(e){a.onlocalcandidate(e)}))}),0)}},u.prototype._createIceAndDtlsTransports=function(){var t=this,n=new e.RTCIceTransport(null);n.onicestatechange=function(){t._updateConnectionState()};var r=new e.RTCDtlsTransport(n);return r.ondtlsstatechange=function(){t._updateConnectionState()},r.onerror=function(){Object.defineProperty(r,"state",{value:"failed",writable:!0}),t._updateConnectionState()},{iceTransport:n,dtlsTransport:r}},u.prototype._disposeIceAndDtlsTransports=function(e){var t=this.transceivers[e].iceGatherer;t&&(delete t.onlocalcandidate,delete this.transceivers[e].iceGatherer);var n=this.transceivers[e].iceTransport;n&&(delete n.onicestatechange,delete this.transceivers[e].iceTransport);var r=this.transceivers[e].dtlsTransport;r&&(delete r.ondtlsstatechange,delete r.onerror,delete this.transceivers[e].dtlsTransport)},u.prototype._transceive=function(e,n,i){var o=a(e.localCapabilities,e.remoteCapabilities);n&&e.rtpSender&&(o.encodings=e.sendEncodingParameters,o.rtcp={cname:r.localCName,compound:e.rtcpParameters.compound},e.recvEncodingParameters.length&&(o.rtcp.ssrc=e.recvEncodingParameters[0].ssrc),e.rtpSender.send(o)),i&&e.rtpReceiver&&o.codecs.length>0&&("video"===e.kind&&e.recvEncodingParameters&&t<15019&&e.recvEncodingParameters.forEach((function(e){delete e.rtx})),e.recvEncodingParameters.length&&(o.encodings=e.recvEncodingParameters),o.rtcp={compound:e.rtcpParameters.compound},e.rtcpParameters.cname&&(o.rtcp.cname=e.rtcpParameters.cname),e.sendEncodingParameters.length&&(o.rtcp.ssrc=e.sendEncodingParameters[0].ssrc),e.rtpReceiver.receive(o))},u.prototype.setLocalDescription=function(e){var t,n,i=this;if(-1===["offer","answer"].indexOf(e.type))return Promise.reject(l("TypeError",'Unsupported type "'+e.type+'"'));if(!o("setLocalDescription",e.type,i.signalingState)||i._isClosed)return Promise.reject(l("InvalidStateError","Can not set local "+e.type+" in state "+i.signalingState));if("offer"===e.type)t=r.splitSections(e.sdp),n=t.shift(),t.forEach((function(e,t){var n=r.parseRtpParameters(e);i.transceivers[t].localCapabilities=n})),i.transceivers.forEach((function(e,t){i._gather(e.mid,t)}));else if("answer"===e.type){t=r.splitSections(i.remoteDescription.sdp),n=t.shift();var s=r.matchPrefix(n,"a=ice-lite").length>0;t.forEach((function(e,t){var o=i.transceivers[t],l=o.iceGatherer,c=o.iceTransport,u=o.dtlsTransport,f=o.localCapabilities,d=o.remoteCapabilities;if(!(r.isRejected(e)&&0===r.matchPrefix(e,"a=bundle-only").length)&&!o.isDatachannel){var h=r.getIceParameters(e,n),p=r.getDtlsParameters(e,n);s&&(p.role="server"),i.usingBundle&&0!==t||(i._gather(o.mid,t),"new"===c.state&&c.start(l,h,s?"controlling":"controlled"),"new"===u.state&&u.start(p));var m=a(f,d);i._transceive(o,m.codecs.length>0,!1)}}))}return i.localDescription={type:e.type,sdp:e.sdp},"offer"===e.type?i._updateSignalingState("have-local-offer"):i._updateSignalingState("stable"),Promise.resolve()},u.prototype.setRemoteDescription=function(i){var a=this;if(-1===["offer","answer"].indexOf(i.type))return Promise.reject(l("TypeError",'Unsupported type "'+i.type+'"'));if(!o("setRemoteDescription",i.type,a.signalingState)||a._isClosed)return Promise.reject(l("InvalidStateError","Can not set remote "+i.type+" in state "+a.signalingState));var u={};a.remoteStreams.forEach((function(e){u[e.id]=e}));var f=[],d=r.splitSections(i.sdp),h=d.shift(),p=r.matchPrefix(h,"a=ice-lite").length>0,m=r.matchPrefix(h,"a=group:BUNDLE ").length>0;a.usingBundle=m;var g=r.matchPrefix(h,"a=ice-options:")[0];return a.canTrickleIceCandidates=!!g&&g.substr(14).split(" ").indexOf("trickle")>=0,d.forEach((function(o,l){var c=r.splitLines(o),d=r.getKind(o),g=r.isRejected(o)&&0===r.matchPrefix(o,"a=bundle-only").length,_=c[0].substr(2).split(" ")[2],b=r.getDirection(o,h),v=r.parseMsid(o),y=r.getMid(o)||r.generateIdentifier();if("application"!==d||"DTLS/SCTP"!==_){var w,C,A,S,x,T,k,E,D,I,P,M=r.parseRtpParameters(o);g||(I=r.getIceParameters(o,h),(P=r.getDtlsParameters(o,h)).role="client"),k=r.parseRtpEncodingParameters(o);var $=r.parseRtcpParameters(o),O=r.matchPrefix(o,"a=end-of-candidates",h).length>0,R=r.matchPrefix(o,"a=candidate:").map((function(e){return r.parseCandidate(e)})).filter((function(e){return 1===e.component}));if(("offer"===i.type||"answer"===i.type)&&!g&&m&&l>0&&a.transceivers[l]&&(a._disposeIceAndDtlsTransports(l),a.transceivers[l].iceGatherer=a.transceivers[0].iceGatherer,a.transceivers[l].iceTransport=a.transceivers[0].iceTransport,a.transceivers[l].dtlsTransport=a.transceivers[0].dtlsTransport,a.transceivers[l].rtpSender&&a.transceivers[l].rtpSender.setTransport(a.transceivers[0].dtlsTransport),a.transceivers[l].rtpReceiver&&a.transceivers[l].rtpReceiver.setTransport(a.transceivers[0].dtlsTransport)),"offer"!==i.type||g)"answer"!==i.type||g||(C=(w=a.transceivers[l]).iceGatherer,A=w.iceTransport,S=w.dtlsTransport,x=w.rtpReceiver,T=w.sendEncodingParameters,E=w.localCapabilities,a.transceivers[l].recvEncodingParameters=k,a.transceivers[l].remoteCapabilities=M,a.transceivers[l].rtcpParameters=$,R.length&&"new"===A.state&&(!p&&!O||m&&0!==l?R.forEach((function(e){s(w.iceTransport,e)})):A.setRemoteCandidates(R)),m&&0!==l||("new"===A.state&&A.start(C,I,"controlling"),"new"===S.state&&S.start(P)),a._transceive(w,"sendrecv"===b||"recvonly"===b,"sendrecv"===b||"sendonly"===b),!x||"sendrecv"!==b&&"sendonly"!==b?delete w.rtpReceiver:(D=x.track,v?(u[v.stream]||(u[v.stream]=new e.MediaStream),n(D,u[v.stream]),f.push([D,x,u[v.stream]])):(u.default||(u.default=new e.MediaStream),n(D,u.default),f.push([D,x,u.default]))));else{(w=a.transceivers[l]||a._createTransceiver(d)).mid=y,w.iceGatherer||(w.iceGatherer=a._createIceGatherer(l,m)),R.length&&"new"===w.iceTransport.state&&(!O||m&&0!==l?R.forEach((function(e){s(w.iceTransport,e)})):w.iceTransport.setRemoteCandidates(R)),E=e.RTCRtpReceiver.getCapabilities(d),t<15019&&(E.codecs=E.codecs.filter((function(e){return"rtx"!==e.name}))),T=w.sendEncodingParameters||[{ssrc:1001*(2*l+2)}];var N,L=!1;if("sendrecv"===b||"sendonly"===b){if(L=!w.rtpReceiver,x=w.rtpReceiver||new e.RTCRtpReceiver(w.dtlsTransport,d),L)D=x.track,v&&"-"===v.stream||(v?(u[v.stream]||(u[v.stream]=new e.MediaStream,Object.defineProperty(u[v.stream],"id",{get:function(){return v.stream}})),Object.defineProperty(D,"id",{get:function(){return v.track}}),N=u[v.stream]):(u.default||(u.default=new e.MediaStream),N=u.default)),N&&(n(D,N),w.associatedRemoteMediaStreams.push(N)),f.push([D,x,N])}else w.rtpReceiver&&w.rtpReceiver.track&&(w.associatedRemoteMediaStreams.forEach((function(t){var n=t.getTracks().find((function(e){return e.id===w.rtpReceiver.track.id}));n&&function(t,n){n.removeTrack(t),n.dispatchEvent(new e.MediaStreamTrackEvent("removetrack",{track:t}))}(n,t)})),w.associatedRemoteMediaStreams=[]);w.localCapabilities=E,w.remoteCapabilities=M,w.rtpReceiver=x,w.rtcpParameters=$,w.sendEncodingParameters=T,w.recvEncodingParameters=k,a._transceive(a.transceivers[l],!1,L)}}else a.transceivers[l]={mid:y,isDatachannel:!0}})),void 0===a._dtlsRole&&(a._dtlsRole="offer"===i.type?"active":"passive"),a.remoteDescription={type:i.type,sdp:i.sdp},"offer"===i.type?a._updateSignalingState("have-remote-offer"):a._updateSignalingState("stable"),Object.keys(u).forEach((function(t){var n=u[t];if(n.getTracks().length){if(-1===a.remoteStreams.indexOf(n)){a.remoteStreams.push(n);var r=new Event("addstream");r.stream=n,e.setTimeout((function(){a._dispatchEvent("addstream",r)}))}f.forEach((function(e){var t=e[0],r=e[1];n.id===e[2].id&&c(a,t,r,[n])}))}})),f.forEach((function(e){e[2]||c(a,e[0],e[1],[])})),e.setTimeout((function(){a&&a.transceivers&&a.transceivers.forEach((function(e){e.iceTransport&&"new"===e.iceTransport.state&&e.iceTransport.getRemoteCandidates().length>0&&(console.warn("Timeout for addRemoteCandidate. Consider sending an end-of-candidates notification"),e.iceTransport.addRemoteCandidate({}))}))}),4e3),Promise.resolve()},u.prototype.close=function(){this.transceivers.forEach((function(e){e.iceTransport&&e.iceTransport.stop(),e.dtlsTransport&&e.dtlsTransport.stop(),e.rtpSender&&e.rtpSender.stop(),e.rtpReceiver&&e.rtpReceiver.stop()})),this._isClosed=!0,this._updateSignalingState("closed")},u.prototype._updateSignalingState=function(e){this.signalingState=e;var t=new Event("signalingstatechange");this._dispatchEvent("signalingstatechange",t)},u.prototype._maybeFireNegotiationNeeded=function(){var t=this;"stable"===this.signalingState&&!0!==this.needNegotiation&&(this.needNegotiation=!0,e.setTimeout((function(){if(t.needNegotiation){t.needNegotiation=!1;var e=new Event("negotiationneeded");t._dispatchEvent("negotiationneeded",e)}}),0))},u.prototype._updateConnectionState=function(){var e,t={new:0,closed:0,connecting:0,checking:0,connected:0,completed:0,disconnected:0,failed:0};if(this.transceivers.forEach((function(e){t[e.iceTransport.state]++,t[e.dtlsTransport.state]++})),t.connected+=t.completed,e="new",t.failed>0?e="failed":t.connecting>0||t.checking>0?e="connecting":t.disconnected>0?e="disconnected":t.new>0?e="new":(t.connected>0||t.completed>0)&&(e="connected"),e!==this.iceConnectionState){this.iceConnectionState=e;var n=new Event("iceconnectionstatechange");this._dispatchEvent("iceconnectionstatechange",n)}},u.prototype.createOffer=function(){var n=this;if(n._isClosed)return Promise.reject(l("InvalidStateError","Can not call createOffer after close"));var a=n.transceivers.filter((function(e){return"audio"===e.kind})).length,o=n.transceivers.filter((function(e){return"video"===e.kind})).length,s=arguments[0];if(s){if(s.mandatory||s.optional)throw new TypeError("Legacy mandatory/optional constraints not supported.");void 0!==s.offerToReceiveAudio&&(a=!0===s.offerToReceiveAudio?1:!1===s.offerToReceiveAudio?0:s.offerToReceiveAudio),void 0!==s.offerToReceiveVideo&&(o=!0===s.offerToReceiveVideo?1:!1===s.offerToReceiveVideo?0:s.offerToReceiveVideo)}for(n.transceivers.forEach((function(e){"audio"===e.kind?--a<0&&(e.wantReceive=!1):"video"===e.kind&&--o<0&&(e.wantReceive=!1)}));a>0||o>0;)a>0&&(n._createTransceiver("audio"),a--),o>0&&(n._createTransceiver("video"),o--);var c=r.writeSessionBoilerplate(n._sdpSessionId,n._sdpSessionVersion++);n.transceivers.forEach((function(i,a){var o=i.track,s=i.kind,l=i.mid||r.generateIdentifier();i.mid=l,i.iceGatherer||(i.iceGatherer=n._createIceGatherer(a,n.usingBundle));var c=e.RTCRtpSender.getCapabilities(s);t<15019&&(c.codecs=c.codecs.filter((function(e){return"rtx"!==e.name}))),c.codecs.forEach((function(e){"H264"===e.name&&void 0===e.parameters["level-asymmetry-allowed"]&&(e.parameters["level-asymmetry-allowed"]="1")}));var u=i.sendEncodingParameters||[{ssrc:1001*(2*a+1)}];o&&t>=15019&&"video"===s&&!u[0].rtx&&(u[0].rtx={ssrc:u[0].ssrc+1}),i.wantReceive&&(i.rtpReceiver=new e.RTCRtpReceiver(i.dtlsTransport,s)),i.localCapabilities=c,i.sendEncodingParameters=u})),"max-compat"!==n._config.bundlePolicy&&(c+="a=group:BUNDLE "+n.transceivers.map((function(e){return e.mid})).join(" ")+"\r\n"),c+="a=ice-options:trickle\r\n",n.transceivers.forEach((function(e,t){c+=i(e,e.localCapabilities,"offer",e.stream,n._dtlsRole),c+="a=rtcp-rsize\r\n",!e.iceGatherer||"new"===n.iceGatheringState||0!==t&&n.usingBundle||(e.iceGatherer.getLocalCandidates().forEach((function(e){e.component=1,c+="a="+r.writeCandidate(e)+"\r\n"})),"completed"===e.iceGatherer.state&&(c+="a=end-of-candidates\r\n"))}));var u=new e.RTCSessionDescription({type:"offer",sdp:c});return Promise.resolve(u)},u.prototype.createAnswer=function(){var n=this;if(n._isClosed)return Promise.reject(l("InvalidStateError","Can not call createAnswer after close"));var o=r.writeSessionBoilerplate(n._sdpSessionId,n._sdpSessionVersion++);n.usingBundle&&(o+="a=group:BUNDLE "+n.transceivers.map((function(e){return e.mid})).join(" ")+"\r\n");var s=r.splitSections(n.remoteDescription.sdp).length-1;n.transceivers.forEach((function(e,r){if(!(r+1>s))if(e.isDatachannel)o+="m=application 0 DTLS/SCTP 5000\r\nc=IN IP4 0.0.0.0\r\na=mid:"+e.mid+"\r\n";else{var l;if(e.stream)"audio"===e.kind?l=e.stream.getAudioTracks()[0]:"video"===e.kind&&(l=e.stream.getVideoTracks()[0]),l&&t>=15019&&"video"===e.kind&&!e.sendEncodingParameters[0].rtx&&(e.sendEncodingParameters[0].rtx={ssrc:e.sendEncodingParameters[0].ssrc+1});var c=a(e.localCapabilities,e.remoteCapabilities);!c.codecs.filter((function(e){return"rtx"===e.name.toLowerCase()})).length&&e.sendEncodingParameters[0].rtx&&delete e.sendEncodingParameters[0].rtx,o+=i(e,c,"answer",e.stream,n._dtlsRole),e.rtcpParameters&&e.rtcpParameters.reducedSize&&(o+="a=rtcp-rsize\r\n")}}));var c=new e.RTCSessionDescription({type:"answer",sdp:o});return Promise.resolve(c)},u.prototype.addIceCandidate=function(e){var t,n=this;return e&&void 0===e.sdpMLineIndex&&!e.sdpMid?Promise.reject(new TypeError("sdpMLineIndex or sdpMid required")):new Promise((function(i,a){if(!n.remoteDescription)return a(l("InvalidStateError","Can not add ICE candidate without a remote description"));if(e&&""!==e.candidate){var o=e.sdpMLineIndex;if(e.sdpMid)for(var c=0;c<n.transceivers.length;c++)if(n.transceivers[c].mid===e.sdpMid){o=c;break}var u=n.transceivers[o];if(!u)return a(l("OperationError","Can not add ICE candidate"));if(u.isDatachannel)return i();var f=Object.keys(e.candidate).length>0?r.parseCandidate(e.candidate):{};if("tcp"===f.protocol&&(0===f.port||9===f.port))return i();if(f.component&&1!==f.component)return i();if((0===o||o>0&&u.iceTransport!==n.transceivers[0].iceTransport)&&!s(u.iceTransport,f))return a(l("OperationError","Can not add ICE candidate"));var d=e.candidate.trim();0===d.indexOf("a=")&&(d=d.substr(2)),(t=r.splitSections(n.remoteDescription.sdp))[o+1]+="a="+(f.type?d:"end-of-candidates")+"\r\n",n.remoteDescription.sdp=t.join("")}else for(var h=0;h<n.transceivers.length&&(n.transceivers[h].isDatachannel||(n.transceivers[h].iceTransport.addRemoteCandidate({}),(t=r.splitSections(n.remoteDescription.sdp))[h+1]+="a=end-of-candidates\r\n",n.remoteDescription.sdp=t.join(""),!n.usingBundle));h++);i()}))},u.prototype.getStats=function(){var e=[];this.transceivers.forEach((function(t){["rtpSender","rtpReceiver","iceGatherer","iceTransport","dtlsTransport"].forEach((function(n){t[n]&&e.push(t[n].getStats())}))}));return new Promise((function(t){var n=new Map;Promise.all(e).then((function(e){e.forEach((function(e){Object.keys(e).forEach((function(t){var r;e[t].type={inboundrtp:"inbound-rtp",outboundrtp:"outbound-rtp",candidatepair:"candidate-pair",localcandidate:"local-candidate",remotecandidate:"remote-candidate"}[(r=e[t]).type]||r.type,n.set(t,e[t])}))})),t(n)}))}))};var f=["createOffer","createAnswer"];return f.forEach((function(e){var t=u.prototype[e];u.prototype[e]=function(){var e=arguments;return"function"==typeof e[0]||"function"==typeof e[1]?t.apply(this,[arguments[2]]).then((function(t){"function"==typeof e[0]&&e[0].apply(null,[t])}),(function(t){"function"==typeof e[1]&&e[1].apply(null,[t])})):t.apply(this,arguments)}})),(f=["setLocalDescription","setRemoteDescription","addIceCandidate"]).forEach((function(e){var t=u.prototype[e];u.prototype[e]=function(){var e=arguments;return"function"==typeof e[1]||"function"==typeof e[2]?t.apply(this,arguments).then((function(){"function"==typeof e[1]&&e[1].apply(null)}),(function(t){"function"==typeof e[2]&&e[2].apply(null,[t])})):t.apply(this,arguments)}})),["getStats"].forEach((function(e){var t=u.prototype[e];u.prototype[e]=function(){var e=arguments;return"function"==typeof e[1]?t.apply(this,arguments).then((function(){"function"==typeof e[1]&&e[1].apply(null)})):t.apply(this,arguments)}})),u}},{sdp:39}],35:[function(e,t,n){var r=t.exports={v:[{name:"version",reg:/^(\d*)$/}],o:[{name:"origin",reg:/^(\S*) (\d*) (\d*) (\S*) IP(\d) (\S*)/,names:["username","sessionId","sessionVersion","netType","ipVer","address"],format:"%s %s %d %s IP%d %s"}],s:[{name:"name"}],i:[{name:"description"}],u:[{name:"uri"}],e:[{name:"email"}],p:[{name:"phone"}],z:[{name:"timezones"}],r:[{name:"repeats"}],t:[{name:"timing",reg:/^(\d*) (\d*)/,names:["start","stop"],format:"%d %d"}],c:[{name:"connection",reg:/^IN IP(\d) (\S*)/,names:["version","ip"],format:"IN IP%d %s"}],b:[{push:"bandwidth",reg:/^(TIAS|AS|CT|RR|RS):(\d*)/,names:["type","limit"],format:"%s:%s"}],m:[{reg:/^(\w*) (\d*) ([\w\/]*)(?: (.*))?/,names:["type","port","protocol","payloads"],format:"%s %d %s %s"}],a:[{push:"rtp",reg:/^rtpmap:(\d*) ([\w\-\.]*)(?:\s*\/(\d*)(?:\s*\/(\S*))?)?/,names:["payload","codec","rate","encoding"],format:function(e){return e.encoding?"rtpmap:%d %s/%s/%s":e.rate?"rtpmap:%d %s/%s":"rtpmap:%d %s"}},{push:"fmtp",reg:/^fmtp:(\d*) ([\S| ]*)/,names:["payload","config"],format:"fmtp:%d %s"},{name:"control",reg:/^control:(.*)/,format:"control:%s"},{name:"rtcp",reg:/^rtcp:(\d*)(?: (\S*) IP(\d) (\S*))?/,names:["port","netType","ipVer","address"],format:function(e){return null!=e.address?"rtcp:%d %s IP%d %s":"rtcp:%d"}},{push:"rtcpFbTrrInt",reg:/^rtcp-fb:(\*|\d*) trr-int (\d*)/,names:["payload","value"],format:"rtcp-fb:%d trr-int %d"},{push:"rtcpFb",reg:/^rtcp-fb:(\*|\d*) ([\w-_]*)(?: ([\w-_]*))?/,names:["payload","type","subtype"],format:function(e){return null!=e.subtype?"rtcp-fb:%s %s %s":"rtcp-fb:%s %s"}},{push:"ext",reg:/^extmap:(\d+)(?:\/(\w+))? (\S*)(?: (\S*))?/,names:["value","direction","uri","config"],format:function(e){return"extmap:%d"+(e.direction?"/%s":"%v")+" %s"+(e.config?" %s":"")}},{push:"crypto",reg:/^crypto:(\d*) ([\w_]*) (\S*)(?: (\S*))?/,names:["id","suite","config","sessionConfig"],format:function(e){return null!=e.sessionConfig?"crypto:%d %s %s %s":"crypto:%d %s %s"}},{name:"setup",reg:/^setup:(\w*)/,format:"setup:%s"},{name:"mid",reg:/^mid:([^\s]*)/,format:"mid:%s"},{name:"msid",reg:/^msid:(.*)/,format:"msid:%s"},{name:"ptime",reg:/^ptime:(\d*)/,format:"ptime:%d"},{name:"maxptime",reg:/^maxptime:(\d*)/,format:"maxptime:%d"},{name:"direction",reg:/^(sendrecv|recvonly|sendonly|inactive)/},{name:"icelite",reg:/^(ice-lite)/},{name:"iceUfrag",reg:/^ice-ufrag:(\S*)/,format:"ice-ufrag:%s"},{name:"icePwd",reg:/^ice-pwd:(\S*)/,format:"ice-pwd:%s"},{name:"fingerprint",reg:/^fingerprint:(\S*) (\S*)/,names:["type","hash"],format:"fingerprint:%s %s"},{push:"candidates",reg:/^candidate:(\S*) (\d*) (\S*) (\d*) (\S*) (\d*) typ (\S*)(?: raddr (\S*) rport (\d*))?(?: tcptype (\S*))?(?: generation (\d*))?(?: network-id (\d*))?(?: network-cost (\d*))?/,names:["foundation","component","transport","priority","ip","port","type","raddr","rport","tcptype","generation","network-id","network-cost"],format:function(e){var t="candidate:%s %d %s %d %s %d typ %s";return t+=null!=e.raddr?" raddr %s rport %d":"%v%v",t+=null!=e.tcptype?" tcptype %s":"%v",null!=e.generation&&(t+=" generation %d"),t+=null!=e["network-id"]?" network-id %d":"%v",t+=null!=e["network-cost"]?" network-cost %d":"%v"}},{name:"endOfCandidates",reg:/^(end-of-candidates)/},{name:"remoteCandidates",reg:/^remote-candidates:(.*)/,format:"remote-candidates:%s"},{name:"iceOptions",reg:/^ice-options:(\S*)/,format:"ice-options:%s"},{push:"ssrcs",reg:/^ssrc:(\d*) ([\w_-]*)(?::(.*))?/,names:["id","attribute","value"],format:function(e){var t="ssrc:%d";return null!=e.attribute&&(t+=" %s",null!=e.value&&(t+=":%s")),t}},{push:"ssrcGroups",reg:/^ssrc-group:([\x21\x23\x24\x25\x26\x27\x2A\x2B\x2D\x2E\w]*) (.*)/,names:["semantics","ssrcs"],format:"ssrc-group:%s %s"},{name:"msidSemantic",reg:/^msid-semantic:\s?(\w*) (\S*)/,names:["semantic","token"],format:"msid-semantic: %s %s"},{push:"groups",reg:/^group:(\w*) (.*)/,names:["type","mids"],format:"group:%s %s"},{name:"rtcpMux",reg:/^(rtcp-mux)/},{name:"rtcpRsize",reg:/^(rtcp-rsize)/},{name:"sctpmap",reg:/^sctpmap:([\w_\/]*) (\S*)(?: (\S*))?/,names:["sctpmapNumber","app","maxMessageSize"],format:function(e){return null!=e.maxMessageSize?"sctpmap:%s %s %s":"sctpmap:%s %s"}},{name:"xGoogleFlag",reg:/^x-google-flag:([^\s]*)/,format:"x-google-flag:%s"},{push:"rids",reg:/^rid:([\d\w]+) (\w+)(?: ([\S| ]*))?/,names:["id","direction","params"],format:function(e){return e.params?"rid:%s %s %s":"rid:%s %s"}},{push:"imageattrs",reg:new RegExp("^imageattr:(\\d+|\\*)[\\s\\t]+(send|recv)[\\s\\t]+(\\*|\\[\\S+\\](?:[\\s\\t]+\\[\\S+\\])*)(?:[\\s\\t]+(recv|send)[\\s\\t]+(\\*|\\[\\S+\\](?:[\\s\\t]+\\[\\S+\\])*))?"),names:["pt","dir1","attrs1","dir2","attrs2"],format:function(e){return"imageattr:%s %s %s"+(e.dir2?" %s %s":"")}},{name:"simulcast",reg:new RegExp("^simulcast:(send|recv) ([a-zA-Z0-9\\-_~;,]+)(?:\\s?(send|recv) ([a-zA-Z0-9\\-_~;,]+))?$"),names:["dir1","list1","dir2","list2"],format:function(e){return"simulcast:%s %s"+(e.dir2?" %s %s":"")}},{name:"simulcast_03",reg:/^simulcast:[\s\t]+([\S+\s\t]+)$/,names:["value"],format:"simulcast: %s"},{name:"framerate",reg:/^framerate:(\d+(?:$|\.\d+))/,format:"framerate:%s"},{push:"invalid",names:["value"]}]};Object.keys(r).forEach((function(e){r[e].forEach((function(e){e.reg||(e.reg=/(.*)/),e.format||(e.format="%s")}))}))},{}],36:[function(e,t,n){var r=e("./parser"),i=e("./writer");n.write=i,n.parse=r.parse,n.parseFmtpConfig=r.parseFmtpConfig,n.parseParams=r.parseParams,n.parsePayloads=r.parsePayloads,n.parseRemoteCandidates=r.parseRemoteCandidates,n.parseImageAttributes=r.parseImageAttributes,n.parseSimulcastStreamList=r.parseSimulcastStreamList},{"./parser":37,"./writer":38}],37:[function(e,t,n){var r=function(e){return String(Number(e))===e?Number(e):e},i=function(e,t,n){var i=e.name&&e.names;e.push&&!t[e.push]?t[e.push]=[]:i&&!t[e.name]&&(t[e.name]={});var a=e.push?{}:i?t[e.name]:t;!function(e,t,n,i){if(i&&!n)t[i]=r(e[1]);else for(var a=0;a<n.length;a+=1)null!=e[a+1]&&(t[n[a]]=r(e[a+1]))}(n.match(e.reg),a,e.names,e.name),e.push&&t[e.push].push(a)},a=e("./grammar"),o=RegExp.prototype.test.bind(/^([a-z])=(.*)/);n.parse=function(e){var t={},n=[],r=t;return e.split(/(\r\n|\r|\n)/).filter(o).forEach((function(e){var t=e[0],o=e.slice(2);"m"===t&&(n.push({rtp:[],fmtp:[]}),r=n[n.length-1]);for(var s=0;s<(a[t]||[]).length;s+=1){var l=a[t][s];if(l.reg.test(o))return i(l,r,o)}})),t.media=n,t};var s=function(e,t){var n=t.split(/=(.+)/,2);return 2===n.length&&(e[n[0]]=r(n[1])),e};n.parseParams=function(e){return e.split(/\;\s?/).reduce(s,{})},n.parseFmtpConfig=n.parseParams,n.parsePayloads=function(e){return e.split(" ").map(Number)},n.parseRemoteCandidates=function(e){for(var t=[],n=e.split(" ").map(r),i=0;i<n.length;i+=3)t.push({component:n[i],ip:n[i+1],port:n[i+2]});return t},n.parseImageAttributes=function(e){return e.split(" ").map((function(e){return e.substring(1,e.length-1).split(",").reduce(s,{})}))},n.parseSimulcastStreamList=function(e){return e.split(";").map((function(e){return e.split(",").map((function(e){var t,n=!1;return"~"!==e[0]?t=r(e):(t=r(e.substring(1,e.length)),n=!0),{scid:t,paused:n}}))}))}},{"./grammar":35}],38:[function(e,t,n){var r=e("./grammar"),i=/%[sdv%]/g,a=function(e){var t=1,n=arguments,r=n.length;return e.replace(i,(function(e){if(t>=r)return e;var i=n[t];switch(t+=1,e){case"%%":return"%";case"%s":return String(i);case"%d":return Number(i);case"%v":return""}}))},o=function(e,t,n){var r=[e+"="+(t.format instanceof Function?t.format(t.push?n:n[t.name]):t.format)];if(t.names)for(var i=0;i<t.names.length;i+=1){var o=t.names[i];t.name?r.push(n[t.name][o]):r.push(n[t.names[i]])}else r.push(n[t.name]);return a.apply(null,r)},s=["v","o","s","i","u","e","p","c","b","t","r","z","a"],l=["i","c","b","a"];t.exports=function(e,t){t=t||{},null==e.version&&(e.version=0),null==e.name&&(e.name=" "),e.media.forEach((function(e){null==e.payloads&&(e.payloads="")}));var n=t.outerOrder||s,i=t.innerOrder||l,a=[];return n.forEach((function(t){r[t].forEach((function(n){n.name in e&&null!=e[n.name]?a.push(o(t,n,e)):n.push in e&&null!=e[n.push]&&e[n.push].forEach((function(e){a.push(o(t,n,e))}))}))})),e.media.forEach((function(e){a.push(o("m",r.m[0],e)),i.forEach((function(t){r[t].forEach((function(n){n.name in e&&null!=e[n.name]?a.push(o(t,n,e)):n.push in e&&null!=e[n.push]&&e[n.push].forEach((function(e){a.push(o(t,n,e))}))}))}))})),a.join("\r\n")+"\r\n"}},{"./grammar":35}],39:[function(e,t,n){"use strict";var r={generateIdentifier:function(){return Math.random().toString(36).substr(2,10)}};r.localCName=r.generateIdentifier(),r.splitLines=function(e){return e.trim().split("\n").map((function(e){return e.trim()}))},r.splitSections=function(e){return e.split("\nm=").map((function(e,t){return(t>0?"m="+e:e).trim()+"\r\n"}))},r.matchPrefix=function(e,t){return r.splitLines(e).filter((function(e){return 0===e.indexOf(t)}))},r.parseCandidate=function(e){for(var t,n={foundation:(t=0===e.indexOf("a=candidate:")?e.substring(12).split(" "):e.substring(10).split(" "))[0],component:parseInt(t[1],10),protocol:t[2].toLowerCase(),priority:parseInt(t[3],10),ip:t[4],port:parseInt(t[5],10),type:t[7]},r=8;r<t.length;r+=2)switch(t[r]){case"raddr":n.relatedAddress=t[r+1];break;case"rport":n.relatedPort=parseInt(t[r+1],10);break;case"tcptype":n.tcpType=t[r+1];break;case"ufrag":n.ufrag=t[r+1],n.usernameFragment=t[r+1];break;default:n[t[r]]=t[r+1]}return n},r.writeCandidate=function(e){var t=[];t.push(e.foundation),t.push(e.component),t.push(e.protocol.toUpperCase()),t.push(e.priority),t.push(e.ip),t.push(e.port);var n=e.type;return t.push("typ"),t.push(n),"host"!==n&&e.relatedAddress&&e.relatedPort&&(t.push("raddr"),t.push(e.relatedAddress),t.push("rport"),t.push(e.relatedPort)),e.tcpType&&"tcp"===e.protocol.toLowerCase()&&(t.push("tcptype"),t.push(e.tcpType)),e.ufrag&&(t.push("ufrag"),t.push(e.ufrag)),"candidate:"+t.join(" ")},r.parseIceOptions=function(e){return e.substr(14).split(" ")},r.parseRtpMap=function(e){var t=e.substr(9).split(" "),n={payloadType:parseInt(t.shift(),10)};return t=t[0].split("/"),n.name=t[0],n.clockRate=parseInt(t[1],10),n.numChannels=3===t.length?parseInt(t[2],10):1,n},r.writeRtpMap=function(e){var t=e.payloadType;return void 0!==e.preferredPayloadType&&(t=e.preferredPayloadType),"a=rtpmap:"+t+" "+e.name+"/"+e.clockRate+(1!==e.numChannels?"/"+e.numChannels:"")+"\r\n"},r.parseExtmap=function(e){var t=e.substr(9).split(" ");return{id:parseInt(t[0],10),direction:t[0].indexOf("/")>0?t[0].split("/")[1]:"sendrecv",uri:t[1]}},r.writeExtmap=function(e){return"a=extmap:"+(e.id||e.preferredId)+(e.direction&&"sendrecv"!==e.direction?"/"+e.direction:"")+" "+e.uri+"\r\n"},r.parseFmtp=function(e){for(var t,n={},r=e.substr(e.indexOf(" ")+1).split(";"),i=0;i<r.length;i++)n[(t=r[i].trim().split("="))[0].trim()]=t[1];return n},r.writeFmtp=function(e){var t="",n=e.payloadType;if(void 0!==e.preferredPayloadType&&(n=e.preferredPayloadType),e.parameters&&Object.keys(e.parameters).length){var r=[];Object.keys(e.parameters).forEach((function(t){r.push(t+"="+e.parameters[t])})),t+="a=fmtp:"+n+" "+r.join(";")+"\r\n"}return t},r.parseRtcpFb=function(e){var t=e.substr(e.indexOf(" ")+1).split(" ");return{type:t.shift(),parameter:t.join(" ")}},r.writeRtcpFb=function(e){var t="",n=e.payloadType;return void 0!==e.preferredPayloadType&&(n=e.preferredPayloadType),e.rtcpFeedback&&e.rtcpFeedback.length&&e.rtcpFeedback.forEach((function(e){t+="a=rtcp-fb:"+n+" "+e.type+(e.parameter&&e.parameter.length?" "+e.parameter:"")+"\r\n"})),t},r.parseSsrcMedia=function(e){var t=e.indexOf(" "),n={ssrc:parseInt(e.substr(7,t-7),10)},r=e.indexOf(":",t);return r>-1?(n.attribute=e.substr(t+1,r-t-1),n.value=e.substr(r+1)):n.attribute=e.substr(t+1),n},r.getMid=function(e){var t=r.matchPrefix(e,"a=mid:")[0];if(t)return t.substr(6)},r.parseFingerprint=function(e){var t=e.substr(14).split(" ");return{algorithm:t[0].toLowerCase(),value:t[1]}},r.getDtlsParameters=function(e,t){return{role:"auto",fingerprints:r.matchPrefix(e+t,"a=fingerprint:").map(r.parseFingerprint)}},r.writeDtlsParameters=function(e,t){var n="a=setup:"+t+"\r\n";return e.fingerprints.forEach((function(e){n+="a=fingerprint:"+e.algorithm+" "+e.value+"\r\n"})),n},r.getIceParameters=function(e,t){var n=r.splitLines(e);return{usernameFragment:(n=n.concat(r.splitLines(t))).filter((function(e){return 0===e.indexOf("a=ice-ufrag:")}))[0].substr(12),password:n.filter((function(e){return 0===e.indexOf("a=ice-pwd:")}))[0].substr(10)}},r.writeIceParameters=function(e){return"a=ice-ufrag:"+e.usernameFragment+"\r\na=ice-pwd:"+e.password+"\r\n"},r.parseRtpParameters=function(e){for(var t={codecs:[],headerExtensions:[],fecMechanisms:[],rtcp:[]},n=r.splitLines(e)[0].split(" "),i=3;i<n.length;i++){var a=n[i],o=r.matchPrefix(e,"a=rtpmap:"+a+" ")[0];if(o){var s=r.parseRtpMap(o),l=r.matchPrefix(e,"a=fmtp:"+a+" ");switch(s.parameters=l.length?r.parseFmtp(l[0]):{},s.rtcpFeedback=r.matchPrefix(e,"a=rtcp-fb:"+a+" ").map(r.parseRtcpFb),t.codecs.push(s),s.name.toUpperCase()){case"RED":case"ULPFEC":t.fecMechanisms.push(s.name.toUpperCase())}}}return r.matchPrefix(e,"a=extmap:").forEach((function(e){t.headerExtensions.push(r.parseExtmap(e))})),t},r.writeRtpDescription=function(e,t){var n="";n+="m="+e+" ",n+=t.codecs.length>0?"9":"0",n+=" UDP/TLS/RTP/SAVPF ",n+=t.codecs.map((function(e){return void 0!==e.preferredPayloadType?e.preferredPayloadType:e.payloadType})).join(" ")+"\r\n",n+="c=IN IP4 0.0.0.0\r\n",n+="a=rtcp:9 IN IP4 0.0.0.0\r\n",t.codecs.forEach((function(e){n+=r.writeRtpMap(e),n+=r.writeFmtp(e),n+=r.writeRtcpFb(e)}));var i=0;return t.codecs.forEach((function(e){e.maxptime>i&&(i=e.maxptime)})),i>0&&(n+="a=maxptime:"+i+"\r\n"),n+="a=rtcp-mux\r\n",t.headerExtensions.forEach((function(e){n+=r.writeExtmap(e)})),n},r.parseRtpEncodingParameters=function(e){var t,n=[],i=r.parseRtpParameters(e),a=-1!==i.fecMechanisms.indexOf("RED"),o=-1!==i.fecMechanisms.indexOf("ULPFEC"),s=r.matchPrefix(e,"a=ssrc:").map((function(e){return r.parseSsrcMedia(e)})).filter((function(e){return"cname"===e.attribute})),l=s.length>0&&s[0].ssrc,c=r.matchPrefix(e,"a=ssrc-group:FID").map((function(e){var t=e.split(" ");return t.shift(),t.map((function(e){return parseInt(e,10)}))}));c.length>0&&c[0].length>1&&c[0][0]===l&&(t=c[0][1]),i.codecs.forEach((function(e){if("RTX"===e.name.toUpperCase()&&e.parameters.apt){var r={ssrc:l,codecPayloadType:parseInt(e.parameters.apt,10),rtx:{ssrc:t}};n.push(r),a&&((r=JSON.parse(JSON.stringify(r))).fec={ssrc:t,mechanism:o?"red+ulpfec":"red"},n.push(r))}})),0===n.length&&l&&n.push({ssrc:l});var u=r.matchPrefix(e,"b=");return u.length&&(u=0===u[0].indexOf("b=TIAS:")?parseInt(u[0].substr(7),10):0===u[0].indexOf("b=AS:")?1e3*parseInt(u[0].substr(5),10)*.95-16e3:void 0,n.forEach((function(e){e.maxBitrate=u}))),n},r.parseRtcpParameters=function(e){var t={},n=r.matchPrefix(e,"a=ssrc:").map((function(e){return r.parseSsrcMedia(e)})).filter((function(e){return"cname"===e.attribute}))[0];n&&(t.cname=n.value,t.ssrc=n.ssrc);var i=r.matchPrefix(e,"a=rtcp-rsize");t.reducedSize=i.length>0,t.compound=0===i.length;var a=r.matchPrefix(e,"a=rtcp-mux");return t.mux=a.length>0,t},r.parseMsid=function(e){var t,n=r.matchPrefix(e,"a=msid:");if(1===n.length)return{stream:(t=n[0].substr(7).split(" "))[0],track:t[1]};var i=r.matchPrefix(e,"a=ssrc:").map((function(e){return r.parseSsrcMedia(e)})).filter((function(e){return"msid"===e.attribute}));return i.length>0?{stream:(t=i[0].value.split(" "))[0],track:t[1]}:void 0},r.generateSessionId=function(){return Math.random().toString().substr(2,21)},r.writeSessionBoilerplate=function(e,t){var n=void 0!==t?t:2;return"v=0\r\no=thisisadapterortc "+(e||r.generateSessionId())+" "+n+" IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\n"},r.writeMediaSection=function(e,t,n,i){var a=r.writeRtpDescription(e.kind,t);if(a+=r.writeIceParameters(e.iceGatherer.getLocalParameters()),a+=r.writeDtlsParameters(e.dtlsTransport.getLocalParameters(),"offer"===n?"actpass":"active"),a+="a=mid:"+e.mid+"\r\n",e.direction?a+="a="+e.direction+"\r\n":e.rtpSender&&e.rtpReceiver?a+="a=sendrecv\r\n":e.rtpSender?a+="a=sendonly\r\n":e.rtpReceiver?a+="a=recvonly\r\n":a+="a=inactive\r\n",e.rtpSender){var o="msid:"+i.id+" "+e.rtpSender.track.id+"\r\n";a+="a="+o,a+="a=ssrc:"+e.sendEncodingParameters[0].ssrc+" "+o,e.sendEncodingParameters[0].rtx&&(a+="a=ssrc:"+e.sendEncodingParameters[0].rtx.ssrc+" "+o,a+="a=ssrc-group:FID "+e.sendEncodingParameters[0].ssrc+" "+e.sendEncodingParameters[0].rtx.ssrc+"\r\n")}return a+="a=ssrc:"+e.sendEncodingParameters[0].ssrc+" cname:"+r.localCName+"\r\n",e.rtpSender&&e.sendEncodingParameters[0].rtx&&(a+="a=ssrc:"+e.sendEncodingParameters[0].rtx.ssrc+" cname:"+r.localCName+"\r\n"),a},r.getDirection=function(e,t){for(var n=r.splitLines(e),i=0;i<n.length;i++)switch(n[i]){case"a=sendrecv":case"a=sendonly":case"a=recvonly":case"a=inactive":return n[i].substr(2)}return t?r.getDirection(t):"sendrecv"},r.getKind=function(e){return r.splitLines(e)[0].split(" ")[0].substr(2)},r.isRejected=function(e){return"0"===e.split(" ",2)[1]},r.parseMLine=function(e){var t=r.splitLines(e)[0].split(" ");return{kind:t[0].substr(2),port:parseInt(t[1],10),protocol:t[2],fmt:t.slice(3).join(" ")}},"object"==typeof t&&(t.exports=r)},{}],40:[function(e,t,n){(function(n){"use strict";var r=e("./adapter_factory.js");t.exports=r({window:n.window})}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./adapter_factory.js":41}],41:[function(e,t,n){"use strict";var r=e("./utils");t.exports=function(t,n){var i=t&&t.window,a={shimChrome:!0,shimFirefox:!0,shimEdge:!0,shimSafari:!0};for(var o in n)hasOwnProperty.call(n,o)&&(a[o]=n[o]);var s=r.log,l=r.detectBrowser(i),c={browserDetails:l,extractVersion:r.extractVersion,disableLog:r.disableLog,disableWarnings:r.disableWarnings},u=e("./chrome/chrome_shim")||null,f=e("./edge/edge_shim")||null,d=e("./firefox/firefox_shim")||null,h=e("./safari/safari_shim")||null,p=e("./common_shim")||null;switch(l.browser){case"chrome":if(!u||!u.shimPeerConnection||!a.shimChrome)return s("Chrome shim is not included in this adapter release."),c;s("adapter.js shimming chrome."),c.browserShim=u,p.shimCreateObjectURL(i),u.shimGetUserMedia(i),u.shimMediaStream(i),u.shimSourceObject(i),u.shimPeerConnection(i),u.shimOnTrack(i),u.shimAddTrackRemoveTrack(i),u.shimGetSendersWithDtmf(i),p.shimRTCIceCandidate(i);break;case"firefox":if(!d||!d.shimPeerConnection||!a.shimFirefox)return s("Firefox shim is not included in this adapter release."),c;s("adapter.js shimming firefox."),c.browserShim=d,p.shimCreateObjectURL(i),d.shimGetUserMedia(i),d.shimSourceObject(i),d.shimPeerConnection(i),d.shimOnTrack(i),d.shimRemoveStream(i),p.shimRTCIceCandidate(i);break;case"edge":if(!f||!f.shimPeerConnection||!a.shimEdge)return s("MS edge shim is not included in this adapter release."),c;s("adapter.js shimming edge."),c.browserShim=f,p.shimCreateObjectURL(i),f.shimGetUserMedia(i),f.shimPeerConnection(i),f.shimReplaceTrack(i);break;case"safari":if(!h||!a.shimSafari)return s("Safari shim is not included in this adapter release."),c;s("adapter.js shimming safari."),c.browserShim=h,p.shimCreateObjectURL(i),h.shimRTCIceServerUrls(i),h.shimCallbacksAPI(i),h.shimLocalStreamsAPI(i),h.shimRemoteStreamsAPI(i),h.shimTrackEventTransceiver(i),h.shimGetUserMedia(i),h.shimCreateOfferLegacy(i),p.shimRTCIceCandidate(i);break;default:s("Unsupported browser!")}return c}},{"./chrome/chrome_shim":42,"./common_shim":44,"./edge/edge_shim":45,"./firefox/firefox_shim":47,"./safari/safari_shim":49,"./utils":50}],42:[function(e,t,n){"use strict";var r=e("../utils.js"),i=r.log;t.exports={shimGetUserMedia:e("./getusermedia"),shimMediaStream:function(e){e.MediaStream=e.MediaStream||e.webkitMediaStream},shimOnTrack:function(e){if("object"==typeof e&&e.RTCPeerConnection&&!("ontrack"in e.RTCPeerConnection.prototype)){Object.defineProperty(e.RTCPeerConnection.prototype,"ontrack",{get:function(){return this._ontrack},set:function(e){this._ontrack&&this.removeEventListener("track",this._ontrack),this.addEventListener("track",this._ontrack=e)}});var t=e.RTCPeerConnection.prototype.setRemoteDescription;e.RTCPeerConnection.prototype.setRemoteDescription=function(){var n=this;return n._ontrackpoly||(n._ontrackpoly=function(t){t.stream.addEventListener("addtrack",(function(r){var i;i=e.RTCPeerConnection.prototype.getReceivers?n.getReceivers().find((function(e){return e.track&&e.track.id===r.track.id})):{track:r.track};var a=new Event("track");a.track=r.track,a.receiver=i,a.transceiver={receiver:i},a.streams=[t.stream],n.dispatchEvent(a)})),t.stream.getTracks().forEach((function(r){var i;i=e.RTCPeerConnection.prototype.getReceivers?n.getReceivers().find((function(e){return e.track&&e.track.id===r.id})):{track:r};var a=new Event("track");a.track=r,a.receiver=i,a.transceiver={receiver:i},a.streams=[t.stream],n.dispatchEvent(a)}))},n.addEventListener("addstream",n._ontrackpoly)),t.apply(n,arguments)}}},shimGetSendersWithDtmf:function(e){if("object"==typeof e&&e.RTCPeerConnection&&!("getSenders"in e.RTCPeerConnection.prototype)&&"createDTMFSender"in e.RTCPeerConnection.prototype){var t=function(e,t){return{track:t,get dtmf(){return void 0===this._dtmf&&("audio"===t.kind?this._dtmf=e.createDTMFSender(t):this._dtmf=null),this._dtmf},_pc:e}};if(!e.RTCPeerConnection.prototype.getSenders){e.RTCPeerConnection.prototype.getSenders=function(){return this._senders=this._senders||[],this._senders.slice()};var n=e.RTCPeerConnection.prototype.addTrack;e.RTCPeerConnection.prototype.addTrack=function(e,r){var i=this,a=n.apply(i,arguments);return a||(a=t(i,e),i._senders.push(a)),a};var r=e.RTCPeerConnection.prototype.removeTrack;e.RTCPeerConnection.prototype.removeTrack=function(e){var t=this;r.apply(t,arguments);var n=t._senders.indexOf(e);-1!==n&&t._senders.splice(n,1)}}var i=e.RTCPeerConnection.prototype.addStream;e.RTCPeerConnection.prototype.addStream=function(e){var n=this;n._senders=n._senders||[],i.apply(n,[e]),e.getTracks().forEach((function(e){n._senders.push(t(n,e))}))};var a=e.RTCPeerConnection.prototype.removeStream;e.RTCPeerConnection.prototype.removeStream=function(e){var t=this;t._senders=t._senders||[],a.apply(t,[e]),e.getTracks().forEach((function(e){var n=t._senders.find((function(t){return t.track===e}));n&&t._senders.splice(t._senders.indexOf(n),1)}))}}else if("object"==typeof e&&e.RTCPeerConnection&&"getSenders"in e.RTCPeerConnection.prototype&&"createDTMFSender"in e.RTCPeerConnection.prototype&&e.RTCRtpSender&&!("dtmf"in e.RTCRtpSender.prototype)){var o=e.RTCPeerConnection.prototype.getSenders;e.RTCPeerConnection.prototype.getSenders=function(){var e=this,t=o.apply(e,[]);return t.forEach((function(t){t._pc=e})),t},Object.defineProperty(e.RTCRtpSender.prototype,"dtmf",{get:function(){return void 0===this._dtmf&&("audio"===this.track.kind?this._dtmf=this._pc.createDTMFSender(this.track):this._dtmf=null),this._dtmf}})}},shimSourceObject:function(e){var t=e&&e.URL;"object"==typeof e&&e.HTMLMediaElement&&!("srcObject"in e.HTMLMediaElement.prototype)&&Object.defineProperty(e.HTMLMediaElement.prototype,"srcObject",{get:function(){return this._srcObject},set:function(e){var n=this;this._srcObject=e,this.src&&t.revokeObjectURL(this.src),e?(this.src=t.createObjectURL(e),e.addEventListener("addtrack",(function(){n.src&&t.revokeObjectURL(n.src),n.src=t.createObjectURL(e)})),e.addEventListener("removetrack",(function(){n.src&&t.revokeObjectURL(n.src),n.src=t.createObjectURL(e)}))):this.src=""}})},shimAddTrackRemoveTrackWithNative:function(e){e.RTCPeerConnection.prototype.getLocalStreams=function(){var e=this;return this._shimmedLocalStreams=this._shimmedLocalStreams||{},Object.keys(this._shimmedLocalStreams).map((function(t){return e._shimmedLocalStreams[t][0]}))};var t=e.RTCPeerConnection.prototype.addTrack;e.RTCPeerConnection.prototype.addTrack=function(e,n){if(!n)return t.apply(this,arguments);this._shimmedLocalStreams=this._shimmedLocalStreams||{};var r=t.apply(this,arguments);return this._shimmedLocalStreams[n.id]?-1===this._shimmedLocalStreams[n.id].indexOf(r)&&this._shimmedLocalStreams[n.id].push(r):this._shimmedLocalStreams[n.id]=[n,r],r};var n=e.RTCPeerConnection.prototype.addStream;e.RTCPeerConnection.prototype.addStream=function(e){var t=this;this._shimmedLocalStreams=this._shimmedLocalStreams||{},e.getTracks().forEach((function(e){if(t.getSenders().find((function(t){return t.track===e})))throw new DOMException("Track already exists.","InvalidAccessError")}));var r=t.getSenders();n.apply(this,arguments);var i=t.getSenders().filter((function(e){return-1===r.indexOf(e)}));this._shimmedLocalStreams[e.id]=[e].concat(i)};var r=e.RTCPeerConnection.prototype.removeStream;e.RTCPeerConnection.prototype.removeStream=function(e){return this._shimmedLocalStreams=this._shimmedLocalStreams||{},delete this._shimmedLocalStreams[e.id],r.apply(this,arguments)};var i=e.RTCPeerConnection.prototype.removeTrack;e.RTCPeerConnection.prototype.removeTrack=function(e){var t=this;return this._shimmedLocalStreams=this._shimmedLocalStreams||{},e&&Object.keys(this._shimmedLocalStreams).forEach((function(n){var r=t._shimmedLocalStreams[n].indexOf(e);-1!==r&&t._shimmedLocalStreams[n].splice(r,1),1===t._shimmedLocalStreams[n].length&&delete t._shimmedLocalStreams[n]})),i.apply(this,arguments)}},shimAddTrackRemoveTrack:function(e){var t=r.detectBrowser(e);if(e.RTCPeerConnection.prototype.addTrack&&t.version>=65)return this.shimAddTrackRemoveTrackWithNative(e);var n=e.RTCPeerConnection.prototype.getLocalStreams;e.RTCPeerConnection.prototype.getLocalStreams=function(){var e=this,t=n.apply(this);return e._reverseStreams=e._reverseStreams||{},t.map((function(t){return e._reverseStreams[t.id]}))};var i=e.RTCPeerConnection.prototype.addStream;e.RTCPeerConnection.prototype.addStream=function(t){var n=this;if(n._streams=n._streams||{},n._reverseStreams=n._reverseStreams||{},t.getTracks().forEach((function(e){if(n.getSenders().find((function(t){return t.track===e})))throw new DOMException("Track already exists.","InvalidAccessError")})),!n._reverseStreams[t.id]){var r=new e.MediaStream(t.getTracks());n._streams[t.id]=r,n._reverseStreams[r.id]=t,t=r}i.apply(n,[t])};var a=e.RTCPeerConnection.prototype.removeStream;function o(e,t){var n=t.sdp;return Object.keys(e._reverseStreams||[]).forEach((function(t){var r=e._reverseStreams[t],i=e._streams[r.id];n=n.replace(new RegExp(i.id,"g"),r.id)})),new RTCSessionDescription({type:t.type,sdp:n})}function s(e,t){var n=t.sdp;return Object.keys(e._reverseStreams||[]).forEach((function(t){var r=e._reverseStreams[t],i=e._streams[r.id];n=n.replace(new RegExp(r.id,"g"),i.id)})),new RTCSessionDescription({type:t.type,sdp:n})}e.RTCPeerConnection.prototype.removeStream=function(e){var t=this;t._streams=t._streams||{},t._reverseStreams=t._reverseStreams||{},a.apply(t,[t._streams[e.id]||e]),delete t._reverseStreams[t._streams[e.id]?t._streams[e.id].id:e.id],delete t._streams[e.id]},e.RTCPeerConnection.prototype.addTrack=function(t,n){var r=this;if("closed"===r.signalingState)throw new DOMException("The RTCPeerConnection's signalingState is 'closed'.","InvalidStateError");var i=[].slice.call(arguments,1);if(1!==i.length||!i[0].getTracks().find((function(e){return e===t})))throw new DOMException("The adapter.js addTrack polyfill only supports a single  stream which is associated with the specified track.","NotSupportedError");var a=r.getSenders().find((function(e){return e.track===t}));if(a)throw new DOMException("Track already exists.","InvalidAccessError");r._streams=r._streams||{},r._reverseStreams=r._reverseStreams||{};var o=r._streams[n.id];if(o)o.addTrack(t),Promise.resolve().then((function(){r.dispatchEvent(new Event("negotiationneeded"))}));else{var s=new e.MediaStream([t]);r._streams[n.id]=s,r._reverseStreams[s.id]=n,r.addStream(s)}return r.getSenders().find((function(e){return e.track===t}))},["createOffer","createAnswer"].forEach((function(t){var n=e.RTCPeerConnection.prototype[t];e.RTCPeerConnection.prototype[t]=function(){var e=this,t=arguments,r=arguments.length&&"function"==typeof arguments[0];return r?n.apply(e,[function(n){var r=o(e,n);t[0].apply(null,[r])},function(e){t[1]&&t[1].apply(null,e)},arguments[2]]):n.apply(e,arguments).then((function(t){return o(e,t)}))}}));var l=e.RTCPeerConnection.prototype.setLocalDescription;e.RTCPeerConnection.prototype.setLocalDescription=function(){var e=this;return arguments.length&&arguments[0].type?(arguments[0]=s(e,arguments[0]),l.apply(e,arguments)):l.apply(e,arguments)};var c=Object.getOwnPropertyDescriptor(e.RTCPeerConnection.prototype,"localDescription");Object.defineProperty(e.RTCPeerConnection.prototype,"localDescription",{get:function(){var e=c.get.apply(this);return""===e.type?e:o(this,e)}}),e.RTCPeerConnection.prototype.removeTrack=function(e){var t,n=this;if("closed"===n.signalingState)throw new DOMException("The RTCPeerConnection's signalingState is 'closed'.","InvalidStateError");if(!e._pc)throw new DOMException("Argument 1 of RTCPeerConnection.removeTrack does not implement interface RTCRtpSender.","TypeError");if(!(e._pc===n))throw new DOMException("Sender was not created by this connection.","InvalidAccessError");n._streams=n._streams||{},Object.keys(n._streams).forEach((function(r){n._streams[r].getTracks().find((function(t){return e.track===t}))&&(t=n._streams[r])})),t&&(1===t.getTracks().length?n.removeStream(n._reverseStreams[t.id]):t.removeTrack(e.track),n.dispatchEvent(new Event("negotiationneeded")))}},shimPeerConnection:function(e){var t=r.detectBrowser(e);if(e.RTCPeerConnection){var n=e.RTCPeerConnection;e.RTCPeerConnection=function(e,t){if(e&&e.iceServers){for(var i=[],a=0;a<e.iceServers.length;a++){var o=e.iceServers[a];!o.hasOwnProperty("urls")&&o.hasOwnProperty("url")?(r.deprecated("RTCIceServer.url","RTCIceServer.urls"),(o=JSON.parse(JSON.stringify(o))).urls=o.url,i.push(o)):i.push(e.iceServers[a])}e.iceServers=i}return new n(e,t)},e.RTCPeerConnection.prototype=n.prototype,Object.defineProperty(e.RTCPeerConnection,"generateCertificate",{get:function(){return n.generateCertificate}})}else e.RTCPeerConnection=function(t,n){return i("PeerConnection"),t&&t.iceTransportPolicy&&(t.iceTransports=t.iceTransportPolicy),new e.webkitRTCPeerConnection(t,n)},e.RTCPeerConnection.prototype=e.webkitRTCPeerConnection.prototype,e.webkitRTCPeerConnection.generateCertificate&&Object.defineProperty(e.RTCPeerConnection,"generateCertificate",{get:function(){return e.webkitRTCPeerConnection.generateCertificate}});var a=e.RTCPeerConnection.prototype.getStats;e.RTCPeerConnection.prototype.getStats=function(e,t,n){var r=this,i=arguments;if(arguments.length>0&&"function"==typeof e)return a.apply(this,arguments);if(0===a.length&&(0===arguments.length||"function"!=typeof arguments[0]))return a.apply(this,[]);var o=function(e){var t={};return e.result().forEach((function(e){var n={id:e.id,timestamp:e.timestamp,type:{localcandidate:"local-candidate",remotecandidate:"remote-candidate"}[e.type]||e.type};e.names().forEach((function(t){n[t]=e.stat(t)})),t[n.id]=n})),t},s=function(e){return new Map(Object.keys(e).map((function(t){return[t,e[t]]})))};if(arguments.length>=2){var l=function(e){i[1](s(o(e)))};return a.apply(this,[l,arguments[0]])}return new Promise((function(e,t){a.apply(r,[function(t){e(s(o(t)))},t])})).then(t,n)},t.version<51&&["setLocalDescription","setRemoteDescription","addIceCandidate"].forEach((function(t){var n=e.RTCPeerConnection.prototype[t];e.RTCPeerConnection.prototype[t]=function(){var e=arguments,t=this,r=new Promise((function(r,i){n.apply(t,[e[0],r,i])}));return e.length<2?r:r.then((function(){e[1].apply(null,[])}),(function(t){e.length>=3&&e[2].apply(null,[t])}))}})),t.version<52&&["createOffer","createAnswer"].forEach((function(t){var n=e.RTCPeerConnection.prototype[t];e.RTCPeerConnection.prototype[t]=function(){var e=this;if(arguments.length<1||1===arguments.length&&"object"==typeof arguments[0]){var t=1===arguments.length?arguments[0]:void 0;return new Promise((function(r,i){n.apply(e,[r,i,t])}))}return n.apply(this,arguments)}})),["setLocalDescription","setRemoteDescription","addIceCandidate"].forEach((function(t){var n=e.RTCPeerConnection.prototype[t];e.RTCPeerConnection.prototype[t]=function(){return arguments[0]=new("addIceCandidate"===t?e.RTCIceCandidate:e.RTCSessionDescription)(arguments[0]),n.apply(this,arguments)}}));var o=e.RTCPeerConnection.prototype.addIceCandidate;e.RTCPeerConnection.prototype.addIceCandidate=function(){return arguments[0]?o.apply(this,arguments):(arguments[1]&&arguments[1].apply(null),Promise.resolve())}}}},{"../utils.js":50,"./getusermedia":43}],43:[function(e,t,n){"use strict";var r=e("../utils.js"),i=r.log;t.exports=function(e){var t=r.detectBrowser(e),n=e&&e.navigator,a=function(e){if("object"!=typeof e||e.mandatory||e.optional)return e;var t={};return Object.keys(e).forEach((function(n){if("require"!==n&&"advanced"!==n&&"mediaSource"!==n){var r="object"==typeof e[n]?e[n]:{ideal:e[n]};void 0!==r.exact&&"number"==typeof r.exact&&(r.min=r.max=r.exact);var i=function(e,t){return e?e+t.charAt(0).toUpperCase()+t.slice(1):"deviceId"===t?"sourceId":t};if(void 0!==r.ideal){t.optional=t.optional||[];var a={};"number"==typeof r.ideal?(a[i("min",n)]=r.ideal,t.optional.push(a),(a={})[i("max",n)]=r.ideal,t.optional.push(a)):(a[i("",n)]=r.ideal,t.optional.push(a))}void 0!==r.exact&&"number"!=typeof r.exact?(t.mandatory=t.mandatory||{},t.mandatory[i("",n)]=r.exact):["min","max"].forEach((function(e){void 0!==r[e]&&(t.mandatory=t.mandatory||{},t.mandatory[i(e,n)]=r[e])}))}})),e.advanced&&(t.optional=(t.optional||[]).concat(e.advanced)),t},o=function(e,r){if(t.version>=61)return r(e);if((e=JSON.parse(JSON.stringify(e)))&&"object"==typeof e.audio){var o=function(e,t,n){t in e&&!(n in e)&&(e[n]=e[t],delete e[t])};o((e=JSON.parse(JSON.stringify(e))).audio,"autoGainControl","googAutoGainControl"),o(e.audio,"noiseSuppression","googNoiseSuppression"),e.audio=a(e.audio)}if(e&&"object"==typeof e.video){var s=e.video.facingMode;s=s&&("object"==typeof s?s:{ideal:s});var l,c=t.version<66;if(s&&("user"===s.exact||"environment"===s.exact||"user"===s.ideal||"environment"===s.ideal)&&(!n.mediaDevices.getSupportedConstraints||!n.mediaDevices.getSupportedConstraints().facingMode||c))if(delete e.video.facingMode,"environment"===s.exact||"environment"===s.ideal?l=["back","rear"]:"user"!==s.exact&&"user"!==s.ideal||(l=["front"]),l)return n.mediaDevices.enumerateDevices().then((function(t){var n=(t=t.filter((function(e){return"videoinput"===e.kind}))).find((function(e){return l.some((function(t){return-1!==e.label.toLowerCase().indexOf(t)}))}));return!n&&t.length&&-1!==l.indexOf("back")&&(n=t[t.length-1]),n&&(e.video.deviceId=s.exact?{exact:n.deviceId}:{ideal:n.deviceId}),e.video=a(e.video),i("chrome: "+JSON.stringify(e)),r(e)}));e.video=a(e.video)}return i("chrome: "+JSON.stringify(e)),r(e)},s=function(e){return{name:{PermissionDeniedError:"NotAllowedError",InvalidStateError:"NotReadableError",DevicesNotFoundError:"NotFoundError",ConstraintNotSatisfiedError:"OverconstrainedError",TrackStartError:"NotReadableError",MediaDeviceFailedDueToShutdown:"NotReadableError",MediaDeviceKillSwitchOn:"NotReadableError"}[e.name]||e.name,message:e.message,constraint:e.constraintName,toString:function(){return this.name+(this.message&&": ")+this.message}}};n.getUserMedia=function(e,t,r){o(e,(function(e){n.webkitGetUserMedia(e,t,(function(e){r&&r(s(e))}))}))};var l=function(e){return new Promise((function(t,r){n.getUserMedia(e,t,r)}))};if(n.mediaDevices||(n.mediaDevices={getUserMedia:l,enumerateDevices:function(){return new Promise((function(t){var n={audio:"audioinput",video:"videoinput"};return e.MediaStreamTrack.getSources((function(e){t(e.map((function(e){return{label:e.label,kind:n[e.kind],deviceId:e.id,groupId:""}})))}))}))},getSupportedConstraints:function(){return{deviceId:!0,echoCancellation:!0,facingMode:!0,frameRate:!0,height:!0,width:!0}}}),n.mediaDevices.getUserMedia){var c=n.mediaDevices.getUserMedia.bind(n.mediaDevices);n.mediaDevices.getUserMedia=function(e){return o(e,(function(e){return c(e).then((function(t){if(e.audio&&!t.getAudioTracks().length||e.video&&!t.getVideoTracks().length)throw t.getTracks().forEach((function(e){e.stop()})),new DOMException("","NotFoundError");return t}),(function(e){return Promise.reject(s(e))}))}))}}else n.mediaDevices.getUserMedia=function(e){return l(e)};void 0===n.mediaDevices.addEventListener&&(n.mediaDevices.addEventListener=function(){i("Dummy mediaDevices.addEventListener called.")}),void 0===n.mediaDevices.removeEventListener&&(n.mediaDevices.removeEventListener=function(){i("Dummy mediaDevices.removeEventListener called.")})}},{"../utils.js":50}],44:[function(e,t,n){"use strict";var r=e("sdp"),i=e("./utils");t.exports={shimRTCIceCandidate:function(e){if(!e.RTCIceCandidate||!("foundation"in e.RTCIceCandidate.prototype)){var t=e.RTCIceCandidate;e.RTCIceCandidate=function(e){"object"==typeof e&&e.candidate&&0===e.candidate.indexOf("a=")&&((e=JSON.parse(JSON.stringify(e))).candidate=e.candidate.substr(2));var n=new t(e),i=r.parseCandidate(e.candidate),a=Object.assign(n,i);return a.toJSON=function(){return{candidate:a.candidate,sdpMid:a.sdpMid,sdpMLineIndex:a.sdpMLineIndex,usernameFragment:a.usernameFragment}},a},function(e,t,n){if(e.RTCPeerConnection){var r=e.RTCPeerConnection.prototype,i=r.addEventListener;r.addEventListener=function(e,r){if(e!==t)return i.apply(this,arguments);var a=function(e){r(n(e))};return this._eventMap=this._eventMap||{},this._eventMap[r]=a,i.apply(this,[e,a])};var a=r.removeEventListener;r.removeEventListener=function(e,n){if(e!==t||!this._eventMap||!this._eventMap[n])return a.apply(this,arguments);var r=this._eventMap[n];return delete this._eventMap[n],a.apply(this,[e,r])},Object.defineProperty(r,"on"+t,{get:function(){return this["_on"+t]},set:function(e){this["_on"+t]&&(this.removeEventListener(t,this["_on"+t]),delete this["_on"+t]),e&&this.addEventListener(t,this["_on"+t]=e)}})}}(e,"icecandidate",(function(t){return t.candidate&&Object.defineProperty(t,"candidate",{value:new e.RTCIceCandidate(t.candidate),writable:"false"}),t}))}},shimCreateObjectURL:function(e){var t=e&&e.URL;if("object"==typeof e&&e.HTMLMediaElement&&"srcObject"in e.HTMLMediaElement.prototype&&t.createObjectURL&&t.revokeObjectURL){var n=t.createObjectURL.bind(t),r=t.revokeObjectURL.bind(t),a=new Map,o=0;t.createObjectURL=function(e){if("getTracks"in e){var t="polyblob:"+ ++o;return a.set(t,e),i.deprecated("URL.createObjectURL(stream)","elem.srcObject = stream"),t}return n(e)},t.revokeObjectURL=function(e){r(e),a.delete(e)};var s=Object.getOwnPropertyDescriptor(e.HTMLMediaElement.prototype,"src");Object.defineProperty(e.HTMLMediaElement.prototype,"src",{get:function(){return s.get.apply(this)},set:function(e){return this.srcObject=a.get(e)||null,s.set.apply(this,[e])}});var l=e.HTMLMediaElement.prototype.setAttribute;e.HTMLMediaElement.prototype.setAttribute=function(){return 2===arguments.length&&"src"===(""+arguments[0]).toLowerCase()&&(this.srcObject=a.get(arguments[1])||null),l.apply(this,arguments)}}}}},{"./utils":50,sdp:39}],45:[function(e,t,n){"use strict";var r=e("../utils"),i=e("rtcpeerconnection-shim");t.exports={shimGetUserMedia:e("./getusermedia"),shimPeerConnection:function(e){var t=r.detectBrowser(e);if(e.RTCIceGatherer&&(e.RTCIceCandidate||(e.RTCIceCandidate=function(e){return e}),e.RTCSessionDescription||(e.RTCSessionDescription=function(e){return e}),t.version<15025)){var n=Object.getOwnPropertyDescriptor(e.MediaStreamTrack.prototype,"enabled");Object.defineProperty(e.MediaStreamTrack.prototype,"enabled",{set:function(e){n.set.call(this,e);var t=new Event("enabled");t.enabled=e,this.dispatchEvent(t)}})}e.RTCRtpSender&&!("dtmf"in e.RTCRtpSender.prototype)&&Object.defineProperty(e.RTCRtpSender.prototype,"dtmf",{get:function(){return void 0===this._dtmf&&("audio"===this.track.kind?this._dtmf=new e.RTCDtmfSender(this):"video"===this.track.kind&&(this._dtmf=null)),this._dtmf}}),e.RTCPeerConnection=i(e,t.version)},shimReplaceTrack:function(e){e.RTCRtpSender&&!("replaceTrack"in e.RTCRtpSender.prototype)&&(e.RTCRtpSender.prototype.replaceTrack=e.RTCRtpSender.prototype.setTrack)}}},{"../utils":50,"./getusermedia":46,"rtcpeerconnection-shim":34}],46:[function(e,t,n){"use strict";t.exports=function(e){var t=e&&e.navigator,n=t.mediaDevices.getUserMedia.bind(t.mediaDevices);t.mediaDevices.getUserMedia=function(e){return n(e).catch((function(e){return Promise.reject(function(e){return{name:{PermissionDeniedError:"NotAllowedError"}[e.name]||e.name,message:e.message,constraint:e.constraint,toString:function(){return this.name}}}(e))}))}}},{}],47:[function(e,t,n){"use strict";var r=e("../utils");t.exports={shimGetUserMedia:e("./getusermedia"),shimOnTrack:function(e){"object"==typeof e&&e.RTCPeerConnection&&!("ontrack"in e.RTCPeerConnection.prototype)&&Object.defineProperty(e.RTCPeerConnection.prototype,"ontrack",{get:function(){return this._ontrack},set:function(e){this._ontrack&&(this.removeEventListener("track",this._ontrack),this.removeEventListener("addstream",this._ontrackpoly)),this.addEventListener("track",this._ontrack=e),this.addEventListener("addstream",this._ontrackpoly=function(e){e.stream.getTracks().forEach(function(t){var n=new Event("track");n.track=t,n.receiver={track:t},n.transceiver={receiver:n.receiver},n.streams=[e.stream],this.dispatchEvent(n)}.bind(this))}.bind(this))}}),"object"==typeof e&&e.RTCTrackEvent&&"receiver"in e.RTCTrackEvent.prototype&&!("transceiver"in e.RTCTrackEvent.prototype)&&Object.defineProperty(e.RTCTrackEvent.prototype,"transceiver",{get:function(){return{receiver:this.receiver}}})},shimSourceObject:function(e){"object"==typeof e&&e.HTMLMediaElement&&!("srcObject"in e.HTMLMediaElement.prototype)&&Object.defineProperty(e.HTMLMediaElement.prototype,"srcObject",{get:function(){return this.mozSrcObject},set:function(e){this.mozSrcObject=e}})},shimPeerConnection:function(e){var t=r.detectBrowser(e);if("object"==typeof e&&(e.RTCPeerConnection||e.mozRTCPeerConnection)){e.RTCPeerConnection||(e.RTCPeerConnection=function(n,r){if(t.version<38&&n&&n.iceServers){for(var i=[],a=0;a<n.iceServers.length;a++){var o=n.iceServers[a];if(o.hasOwnProperty("urls"))for(var s=0;s<o.urls.length;s++){var l={url:o.urls[s]};0===o.urls[s].indexOf("turn")&&(l.username=o.username,l.credential=o.credential),i.push(l)}else i.push(n.iceServers[a])}n.iceServers=i}return new e.mozRTCPeerConnection(n,r)},e.RTCPeerConnection.prototype=e.mozRTCPeerConnection.prototype,e.mozRTCPeerConnection.generateCertificate&&Object.defineProperty(e.RTCPeerConnection,"generateCertificate",{get:function(){return e.mozRTCPeerConnection.generateCertificate}}),e.RTCSessionDescription=e.mozRTCSessionDescription,e.RTCIceCandidate=e.mozRTCIceCandidate),["setLocalDescription","setRemoteDescription","addIceCandidate"].forEach((function(t){var n=e.RTCPeerConnection.prototype[t];e.RTCPeerConnection.prototype[t]=function(){return arguments[0]=new("addIceCandidate"===t?e.RTCIceCandidate:e.RTCSessionDescription)(arguments[0]),n.apply(this,arguments)}}));var n=e.RTCPeerConnection.prototype.addIceCandidate;e.RTCPeerConnection.prototype.addIceCandidate=function(){return arguments[0]?n.apply(this,arguments):(arguments[1]&&arguments[1].apply(null),Promise.resolve())};var i={inboundrtp:"inbound-rtp",outboundrtp:"outbound-rtp",candidatepair:"candidate-pair",localcandidate:"local-candidate",remotecandidate:"remote-candidate"},a=e.RTCPeerConnection.prototype.getStats;e.RTCPeerConnection.prototype.getStats=function(e,n,r){return a.apply(this,[e||null]).then((function(e){if(t.version<48&&(e=function(e){var t=new Map;return Object.keys(e).forEach((function(n){t.set(n,e[n]),t[n]=e[n]})),t}(e)),t.version<53&&!n)try{e.forEach((function(e){e.type=i[e.type]||e.type}))}catch(t){if("TypeError"!==t.name)throw t;e.forEach((function(t,n){e.set(n,Object.assign({},t,{type:i[t.type]||t.type}))}))}return e})).then(n,r)}}},shimRemoveStream:function(e){e.RTCPeerConnection&&!("removeStream"in e.RTCPeerConnection.prototype)&&(e.RTCPeerConnection.prototype.removeStream=function(e){var t=this;r.deprecated("removeStream","removeTrack"),this.getSenders().forEach((function(n){n.track&&-1!==e.getTracks().indexOf(n.track)&&t.removeTrack(n)}))})}}},{"../utils":50,"./getusermedia":48}],48:[function(e,t,n){"use strict";var r=e("../utils"),i=r.log;t.exports=function(e){var t=r.detectBrowser(e),n=e&&e.navigator,a=e&&e.MediaStreamTrack,o=function(e){return{name:{InternalError:"NotReadableError",NotSupportedError:"TypeError",PermissionDeniedError:"NotAllowedError",SecurityError:"NotAllowedError"}[e.name]||e.name,message:{"The operation is insecure.":"The request is not allowed by the user agent or the platform in the current context."}[e.message]||e.message,constraint:e.constraint,toString:function(){return this.name+(this.message&&": ")+this.message}}},s=function(e,r,a){var s=function(e){if("object"!=typeof e||e.require)return e;var t=[];return Object.keys(e).forEach((function(n){if("require"!==n&&"advanced"!==n&&"mediaSource"!==n){var r=e[n]="object"==typeof e[n]?e[n]:{ideal:e[n]};if(void 0===r.min&&void 0===r.max&&void 0===r.exact||t.push(n),void 0!==r.exact&&("number"==typeof r.exact?r.min=r.max=r.exact:e[n]=r.exact,delete r.exact),void 0!==r.ideal){e.advanced=e.advanced||[];var i={};"number"==typeof r.ideal?i[n]={min:r.ideal,max:r.ideal}:i[n]=r.ideal,e.advanced.push(i),delete r.ideal,Object.keys(r).length||delete e[n]}}})),t.length&&(e.require=t),e};return e=JSON.parse(JSON.stringify(e)),t.version<38&&(i("spec: "+JSON.stringify(e)),e.audio&&(e.audio=s(e.audio)),e.video&&(e.video=s(e.video)),i("ff37: "+JSON.stringify(e))),n.mozGetUserMedia(e,r,(function(e){a(o(e))}))};if(n.mediaDevices||(n.mediaDevices={getUserMedia:function(e){return new Promise((function(t,n){s(e,t,n)}))},addEventListener:function(){},removeEventListener:function(){}}),n.mediaDevices.enumerateDevices=n.mediaDevices.enumerateDevices||function(){return new Promise((function(e){e([{kind:"audioinput",deviceId:"default",label:"",groupId:""},{kind:"videoinput",deviceId:"default",label:"",groupId:""}])}))},t.version<41){var l=n.mediaDevices.enumerateDevices.bind(n.mediaDevices);n.mediaDevices.enumerateDevices=function(){return l().then(void 0,(function(e){if("NotFoundError"===e.name)return[];throw e}))}}if(t.version<49){var c=n.mediaDevices.getUserMedia.bind(n.mediaDevices);n.mediaDevices.getUserMedia=function(e){return c(e).then((function(t){if(e.audio&&!t.getAudioTracks().length||e.video&&!t.getVideoTracks().length)throw t.getTracks().forEach((function(e){e.stop()})),new DOMException("The object can not be found here.","NotFoundError");return t}),(function(e){return Promise.reject(o(e))}))}}if(!(t.version>55&&"autoGainControl"in n.mediaDevices.getSupportedConstraints())){var u=function(e,t,n){t in e&&!(n in e)&&(e[n]=e[t],delete e[t])},f=n.mediaDevices.getUserMedia.bind(n.mediaDevices);if(n.mediaDevices.getUserMedia=function(e){return"object"==typeof e&&"object"==typeof e.audio&&(e=JSON.parse(JSON.stringify(e)),u(e.audio,"autoGainControl","mozAutoGainControl"),u(e.audio,"noiseSuppression","mozNoiseSuppression")),f(e)},a&&a.prototype.getSettings){var d=a.prototype.getSettings;a.prototype.getSettings=function(){var e=d.apply(this,arguments);return u(e,"mozAutoGainControl","autoGainControl"),u(e,"mozNoiseSuppression","noiseSuppression"),e}}if(a&&a.prototype.applyConstraints){var h=a.prototype.applyConstraints;a.prototype.applyConstraints=function(e){return"audio"===this.kind&&"object"==typeof e&&(e=JSON.parse(JSON.stringify(e)),u(e,"autoGainControl","mozAutoGainControl"),u(e,"noiseSuppression","mozNoiseSuppression")),h.apply(this,[e])}}}n.getUserMedia=function(e,i,a){if(t.version<44)return s(e,i,a);r.deprecated("navigator.getUserMedia","navigator.mediaDevices.getUserMedia"),n.mediaDevices.getUserMedia(e).then(i,a)}}},{"../utils":50}],49:[function(e,t,n){"use strict";var r=e("../utils");t.exports={shimLocalStreamsAPI:function(e){if("object"==typeof e&&e.RTCPeerConnection){if("getLocalStreams"in e.RTCPeerConnection.prototype||(e.RTCPeerConnection.prototype.getLocalStreams=function(){return this._localStreams||(this._localStreams=[]),this._localStreams}),"getStreamById"in e.RTCPeerConnection.prototype||(e.RTCPeerConnection.prototype.getStreamById=function(e){var t=null;return this._localStreams&&this._localStreams.forEach((function(n){n.id===e&&(t=n)})),this._remoteStreams&&this._remoteStreams.forEach((function(n){n.id===e&&(t=n)})),t}),!("addStream"in e.RTCPeerConnection.prototype)){var t=e.RTCPeerConnection.prototype.addTrack;e.RTCPeerConnection.prototype.addStream=function(e){this._localStreams||(this._localStreams=[]),-1===this._localStreams.indexOf(e)&&this._localStreams.push(e);var n=this;e.getTracks().forEach((function(r){t.call(n,r,e)}))},e.RTCPeerConnection.prototype.addTrack=function(e,n){return n&&(this._localStreams?-1===this._localStreams.indexOf(n)&&this._localStreams.push(n):this._localStreams=[n]),t.call(this,e,n)}}"removeStream"in e.RTCPeerConnection.prototype||(e.RTCPeerConnection.prototype.removeStream=function(e){this._localStreams||(this._localStreams=[]);var t=this._localStreams.indexOf(e);if(-1!==t){this._localStreams.splice(t,1);var n=this,r=e.getTracks();this.getSenders().forEach((function(e){-1!==r.indexOf(e.track)&&n.removeTrack(e)}))}})}},shimRemoteStreamsAPI:function(e){"object"==typeof e&&e.RTCPeerConnection&&("getRemoteStreams"in e.RTCPeerConnection.prototype||(e.RTCPeerConnection.prototype.getRemoteStreams=function(){return this._remoteStreams?this._remoteStreams:[]}),"onaddstream"in e.RTCPeerConnection.prototype||Object.defineProperty(e.RTCPeerConnection.prototype,"onaddstream",{get:function(){return this._onaddstream},set:function(e){this._onaddstream&&(this.removeEventListener("addstream",this._onaddstream),this.removeEventListener("track",this._onaddstreampoly)),this.addEventListener("addstream",this._onaddstream=e),this.addEventListener("track",this._onaddstreampoly=function(e){var t=e.streams[0];if(this._remoteStreams||(this._remoteStreams=[]),!(this._remoteStreams.indexOf(t)>=0)){this._remoteStreams.push(t);var n=new Event("addstream");n.stream=e.streams[0],this.dispatchEvent(n)}}.bind(this))}}))},shimCallbacksAPI:function(e){if("object"==typeof e&&e.RTCPeerConnection){var t=e.RTCPeerConnection.prototype,n=t.createOffer,r=t.createAnswer,i=t.setLocalDescription,a=t.setRemoteDescription,o=t.addIceCandidate;t.createOffer=function(e,t){var r=arguments.length>=2?arguments[2]:arguments[0],i=n.apply(this,[r]);return t?(i.then(e,t),Promise.resolve()):i},t.createAnswer=function(e,t){var n=arguments.length>=2?arguments[2]:arguments[0],i=r.apply(this,[n]);return t?(i.then(e,t),Promise.resolve()):i};var s=function(e,t,n){var r=i.apply(this,[e]);return n?(r.then(t,n),Promise.resolve()):r};t.setLocalDescription=s,s=function(e,t,n){var r=a.apply(this,[e]);return n?(r.then(t,n),Promise.resolve()):r},t.setRemoteDescription=s,s=function(e,t,n){var r=o.apply(this,[e]);return n?(r.then(t,n),Promise.resolve()):r},t.addIceCandidate=s}},shimGetUserMedia:function(e){var t=e&&e.navigator;t.getUserMedia||(t.webkitGetUserMedia?t.getUserMedia=t.webkitGetUserMedia.bind(t):t.mediaDevices&&t.mediaDevices.getUserMedia&&(t.getUserMedia=function(e,n,r){t.mediaDevices.getUserMedia(e).then(n,r)}.bind(t)))},shimRTCIceServerUrls:function(e){var t=e.RTCPeerConnection;e.RTCPeerConnection=function(e,n){if(e&&e.iceServers){for(var i=[],a=0;a<e.iceServers.length;a++){var o=e.iceServers[a];!o.hasOwnProperty("urls")&&o.hasOwnProperty("url")?(r.deprecated("RTCIceServer.url","RTCIceServer.urls"),(o=JSON.parse(JSON.stringify(o))).urls=o.url,delete o.url,i.push(o)):i.push(e.iceServers[a])}e.iceServers=i}return new t(e,n)},e.RTCPeerConnection.prototype=t.prototype,"generateCertificate"in e.RTCPeerConnection&&Object.defineProperty(e.RTCPeerConnection,"generateCertificate",{get:function(){return t.generateCertificate}})},shimTrackEventTransceiver:function(e){"object"==typeof e&&e.RTCPeerConnection&&"receiver"in e.RTCTrackEvent.prototype&&!e.RTCTransceiver&&Object.defineProperty(e.RTCTrackEvent.prototype,"transceiver",{get:function(){return{receiver:this.receiver}}})},shimCreateOfferLegacy:function(e){var t=e.RTCPeerConnection.prototype.createOffer;e.RTCPeerConnection.prototype.createOffer=function(e){var n=this;if(e){var r=n.getTransceivers().find((function(e){return e.sender.track&&"audio"===e.sender.track.kind}));!1===e.offerToReceiveAudio&&r?"sendrecv"===r.direction?r.setDirection("sendonly"):"recvonly"===r.direction&&r.setDirection("inactive"):!0!==e.offerToReceiveAudio||r||n.addTransceiver("audio");var i=n.getTransceivers().find((function(e){return e.sender.track&&"video"===e.sender.track.kind}));!1===e.offerToReceiveVideo&&i?"sendrecv"===i.direction?i.setDirection("sendonly"):"recvonly"===i.direction&&i.setDirection("inactive"):!0!==e.offerToReceiveVideo||i||n.addTransceiver("video")}return t.apply(n,arguments)}}}},{"../utils":50}],50:[function(e,t,n){"use strict";var r=!0,i=!0;function a(e,t,n){var r=e.match(t);return r&&r.length>=n&&parseInt(r[n],10)}t.exports={extractVersion:a,disableLog:function(e){return"boolean"!=typeof e?new Error("Argument type: "+typeof e+". Please use a boolean."):(r=e,e?"adapter.js logging disabled":"adapter.js logging enabled")},disableWarnings:function(e){return"boolean"!=typeof e?new Error("Argument type: "+typeof e+". Please use a boolean."):(i=!e,"adapter.js deprecation warnings "+(e?"disabled":"enabled"))},log:function(){if("object"==typeof window){if(r)return;"undefined"!=typeof console&&"function"==typeof console.log&&console.log.apply(console,arguments)}},deprecated:function(e,t){i&&console.warn(e+" is deprecated, please use "+t+" instead.")},detectBrowser:function(e){var t=e&&e.navigator,n={browser:null,version:null};if(void 0===e||!e.navigator)return n.browser="Not a browser.",n;if(t.mozGetUserMedia)n.browser="firefox",n.version=a(t.userAgent,/Firefox\/(\d+)\./,1);else if(t.webkitGetUserMedia)if(e.webkitRTCPeerConnection)n.browser="chrome",n.version=a(t.userAgent,/Chrom(e|ium)\/(\d+)\./,2);else{if(!t.userAgent.match(/Version\/(\d+).(\d+)/))return n.browser="Unsupported webkit-based browser with GUM support but no WebRTC support.",n;n.browser="safari",n.version=a(t.userAgent,/AppleWebKit\/(\d+)\./,1)}else if(t.mediaDevices&&t.userAgent.match(/Edge\/(\d+).(\d+)$/))n.browser="edge",n.version=a(t.userAgent,/Edge\/(\d+).(\d+)$/,2);else{if(!t.mediaDevices||!t.userAgent.match(/AppleWebKit\/(\d+)\./))return n.browser="Not a supported browser.",n;n.browser="safari",n.version=a(t.userAgent,/AppleWebKit\/(\d+)\./,1)}return n}}},{}],51:[function(e,t,n){t.exports={name:"jssip",title:"JsSIP",description:"the Javascript SIP library",version:"3.2.11",homepage:"http://jssip.net",author:"José Luis Millán <[email-masked]> (https://github.com/jmillan)",contributors:["Iñaki Baz Castillo <[email-masked]> (https://github.com/ibc)","Saúl Ibarra Corretgé <[email-masked]> (https://github.com/saghul)"],main:"lib-es5/JsSIP.js",keywords:["sip","websocket","webrtc","node","browser","library"],license:"MIT",repository:{type:"git",url:"https://github.com/versatica/JsSIP.git"},bugs:{url:"https://github.com/versatica/JsSIP/issues"},dependencies:{debug:"^3.1.0",events:"^2.0.0","sdp-transform":"^2.4.1","webrtc-adapter":"^6.1.5"},devDependencies:{"ansi-colors":"^1.1.0","babel-core":"^6.26.0","babel-preset-env":"^1.6.1",browserify:"^16.2.0",eslint:"^4.19.1","fancy-log":"^1.3.2",gulp:"^4.0.0","gulp-babel":"^7.0.1","gulp-eslint":"^4.0.2","gulp-expect-file":"0.0.7","gulp-header":"^2.0.5","gulp-nodeunit-runner":"^0.2.2","gulp-plumber":"^1.2.0","gulp-rename":"^1.2.2","gulp-uglify":"^3.0.0",pegjs:"^0.7.0","vinyl-buffer":"^1.0.1","vinyl-source-stream":"^2.0.0"},scripts:{test:"gulp test",prepublishOnly:"gulp babel"}}},{}]},{},[8])(8)})),function(e,t){function n(e){return{scope:{selectedTemplate:"=",selectedTemplateName:"=",dateStart:"=?",dateEnd:"=?",firstDayOfWeek:"=?",showTemplate:"=?",mdOnSelect:"&",localizationMap:"=?",customTemplates:"=?",disableTemplates:"@",maxRange:"=?",onePanel:"=?",isDisabledDate:"&?",format:"=?"},template:'<div class="md-date-range-picker md-whiteframe-1dp" ng-class="{\'md-date-range-picker__one-panel\':onePanel}"><div layout="column"><div layout="row" layout-margin><div class="md-date-range-picker__calendar-wrapper"><div class="md-date-range-picker__month-year" layout="row" layout-align="center center"><div flex layout="column" layout-align="center center"><span aria-label="Previous Month" class="md-button md-icon-button" event-key="prev"><md-icon md-svg-src="data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjQgMjQiPjxnPjxwb2x5Z29uIHBvaW50cz0iMTUuNCw3LjQgMTQsNiA4LDEyIDE0LDE4IDE1LjQsMTYuNiAxMC44LDEyICIvPjwvZz48L3N2Zz4="></md-icon></span></div><md-select md-container-class="md-date-range-picker__select" md-on-close="updateActiveDate()" ng-model="activeMonth" placeholder="{{::getLocalizationVal(\'Month\')}}" class="md-no-underline"><md-option ng-value="::month.id" ng-repeat="month in months" ng-bind="::month.name"></md-option></md-select><md-select md-container-class="md-date-range-picker__select" md-on-close="updateActiveDate()" ng-model="activeYear" placeholder="{{::getLocalizationVal(\'Year\')}}" class="md-no-underline"><md-option ng-value="::year.id" ng-repeat="year in years" ng-bind="::year.name"></md-option></md-select><div flex layout="column" layout-align="center center" class="hide-gt-sm show-sm show-xs"><span aria-label="Next Month" class="md-icon-button md-button" event-key="next"><md-icon style="transform: rotate(-180deg)" md-svg-src="data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjQgMjQiPjxnPjxwb2x5Z29uIHBvaW50cz0iMTUuNCw3LjQgMTQsNiA4LDEyIDE0LDE4IDE1LjQsMTYuNiAxMC44LDEyICIvPjwvZz48L3N2Zz4="></md-icon></span></div><div flex ng-if="onePanel" layout="column" layout-align="center center" class="hide-sm hide-xs show-gt-sm"><span aria-label="Next Month" class="md-icon-button md-button" event-key="next"><md-icon style="transform: rotate(-180deg)" md-svg-src="data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjQgMjQiPjxnPjxwb2x5Z29uIHBvaW50cz0iMTUuNCw3LjQgMTQsNiA4LDEyIDE0LDE4IDE1LjQsMTYuNiAxMC44LDEyICIvPjwvZz48L3N2Zz4="></md-icon></span></div><div flex ng-if="!onePanel" layout="column" layout-align="center center" class="hide-sm hide-xs show-gt-sm"><span aria-label="Next Month" ng-disabled="true" aria-hidden="true" class="md-icon-button md-button"><md-icon></md-icon></span></div></div><div class="md-date-range-picker__week" style="font-size: 0"><span class="md-date-range-picker__calendar__grid" ng-repeat="day in days">{{::day.name}}</span></div><div class="md-date-range-picker__calendar"><span ng-repeat="date in dates" class="md-date-range-picker__calendar__grid" ng-class="{\'md-date-range-picker__calendar__selected\':inSelectedDateRange(date),\'md-date-range-picker__calendar__start\':isSelectedStartDate(date),\'md-date-range-picker__calendar__end\':isSelectedEndDate(date),\'md-date-range-picker__calendar__not-in-active-month\': !inCurrentMonth(date),\'md-date-range-picker__calendar__today\' : isToday(date),\'md-date-range-picker__calendar__disabled\': !isInMaxRange(date) || isDisabledDate({$date:date})}" event-key="date1" event-param="{{$index}}"><span event-key="date1" event-param="{{$index}}" class="md-date-range-picker__calendar__selection" ng-bind="{{::date.getDate()}}"></span></span></div></div><div ng-show="!onePanel" class="md-date-range-picker__calendar-wrapper hide-sm hide-xs show-gt-sm"><div class="md-date-range-picker__month-year" layout="row" layout-align="center center"><div flex layout="column" layout-align="center center" style="visibility: hidden"><span aria-label="Previous Month" class="md-button md-icon-button" event-key="prev"><md-icon md-svg-src="data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjQgMjQiPjxnPjxwb2x5Z29uIHBvaW50cz0iMTUuNCw3LjQgMTQsNiA4LDEyIDE0LDE4IDE1LjQsMTYuNiAxMC44LDEyICIvPjwvZz48L3N2Zz4="></md-icon></span></div><md-select md-container-class="md-date-range-picker__select" md-on-close="updateActiveDate(true)" ng-model="activeMonth2" placeholder="{{::getLocalizationVal(\'Month\')}}" class="md-no-underline"><md-option ng-value="::month.id" ng-repeat="month in months" ng-bind="::month.name"></md-option></md-select><md-select md-container-class="md-date-range-picker__select" md-on-close="updateActiveDate(true)" ng-model="activeYear2" placeholder="{{::getLocalizationVal(\'Year\')}}" class="md-no-underline"><md-option ng-value="::year.id" ng-repeat="year in years" ng-bind="::year.name"></md-option></md-select><div flex layout="column" layout-align="center center"><span aria-label="Next Month" class="md-icon-button md-button" event-key="next"><md-icon style="transform: rotate(-180deg)" md-svg-src="data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjQgMjQiPjxnPjxwb2x5Z29uIHBvaW50cz0iMTUuNCw3LjQgMTQsNiA4LDEyIDE0LDE4IDE1LjQsMTYuNiAxMC44LDEyICIvPjwvZz48L3N2Zz4="></md-icon></span></div></div><div class="md-date-range-picker__week" style="font-size: 0" ng-if="!onePanel"><span class="md-date-range-picker__calendar__grid" ng-repeat="day in days">{{::day.name}}</span></div><div class="md-date-range-picker__calendar"><span ng-repeat="date in dates2" class="md-date-range-picker__calendar__grid" ng-class="{\'md-date-range-picker__calendar__selected\':inSelectedDateRange(date), \'md-date-range-picker__calendar__start\':isSelectedStartDate(date), \'md-date-range-picker__calendar__end\':isSelectedEndDate(date), \'md-date-range-picker__calendar__not-in-active-month\': !inCurrentMonth(date, true), \'md-date-range-picker__calendar__today\' : isToday(date),\'md-date-range-picker__calendar__disabled\': !isInMaxRange(date) || isDisabledDate({$date:date}) }" event-key="date2" event-param="{{$index}}"><span event-key="date2" event-param="{{$index}}" class="md-date-range-picker__calendar__selection" ng-bind="{{::date.getDate()}}"></span></span></div></div></div><div class="md-date-range-picker__templates" ng-if="showTemplate"><div ng-if="!onePanel && !maxRange" class="hide-xs hide-sm show-gt-sm" layout="row" layout-align="center center" layout-wrap><div ng-repeat="(tmpltKey,tmpltName) in selectionTemplate" class="md-button" aria-label="{{::tmpltName}}" ng-class="selectedTemplate === tmpltKey ? \'md-primary md-raised\' : \'\'" event-key="{{tmpltKey}}" ng-bind="::tmpltName" flex="20"></div><div ng-repeat="tmplt in customTemplates" class="md-button" aria-label="{{::tmplt.name}}" ng-class="selectedTemplate === tmplt.name ? \'md-primary md-raised\' : \'\'" ng-click="selectCustomRange(tmplt.name,tmplt)" event-key="Custom Template" ng-bind="::tmplt.name" flex="20"></div></div><div ng-if="!maxRange" ng-class="{\'hide-gt-sm\':!onePanel}" layout="column" layout-padding><md-input-container><label>{{::getLocalizationVal(\'Date Range Template\')}}</label><md-select md-container-class="md-date-range-picker__select" class="md-block" placeholder="{{::getLocalizationVal(\'Custom Date Range\')}}" ng-model="selectedTemplate"><md-option value=""></md-option><md-option ng-repeat="(tmpltKey,tmpltName) in selectionTemplate track by tmpltKey" aria-label="{{::tmpltName}}" ng-click="actionByKey(tmpltKey,null)" ng-bind="::tmpltName" value="{{tmpltKey}}"></md-option><md-option ng-repeat="tmplt in customTemplates" aria-label="{{::tmplt.name}}" ng-click="selectCustomRange(tmplt.name,tmplt)" ng-bind="::tmplt.name" value="{{::tmplt.name}}"></md-option></md-select></md-input-container></div></div></div></div>',controller:"mdDateRangePickerCtrl",link:function(t,n,r,i){t.actionByKey=function(e,n,r){switch(e){case"prev":t.handleClickPrevMonth(r),t.runIfNotInDigest();break;case"next":t.handleClickNextMonth(r),t.runIfNotInDigest();break;case"date1":t.handleClickDate(r,t.dates[n])?t.runIfNotInDigest(t.triggerChange):t.runIfNotInDigest();break;case"date2":t.handleClickDate(r,t.dates2[n])?t.runIfNotInDigest(t.triggerChange):t.runIfNotInDigest();break;case"TD":t.handleClickSelectToday(),t.runIfNotInDigest(t.triggerChange);break;case"YD":t.handleClickSelectYesterday(),t.runIfNotInDigest(t.triggerChange);break;case"TW":t.handleClickSelectThisWeek(),t.runIfNotInDigest(t.triggerChange);break;case"LW":t.handleClickSelectLastWeek(),t.runIfNotInDigest(t.triggerChange);break;case"TM":t.handleClickSelectThisMonth(),t.runIfNotInDigest(t.triggerChange);break;case"LM":t.handleClickSelectLastMonth(),t.runIfNotInDigest(t.triggerChange);break;case"TY":t.handleClickSelectThisYear(),t.runIfNotInDigest(t.triggerChange);break;case"LY":t.handleClickSelectLastYear(),t.runIfNotInDigest(t.triggerChange);break;case"Custom Template":t.runIfNotInDigest(t.triggerChange)}},t.runIfNotInDigest=function(e){null==t.$root||t.$root.$$phase||(t.$apply(),e&&"function"==typeof e&&e())},n.on("click",(function(e){var n=e.target.getAttribute("event-key"),r=e.target.getAttribute("event-param");t.actionByKey(n,r,e)})),t.triggerChange=function(n){var r=e.getSelectedDate(t.dateStart,t.dateEnd,t.isDisabledDate,t.maxRange);t.mdOnSelect&&t.mdOnSelect({$dates:r})}}}}function r(e,t){var n={TD:r("Today"),YD:r("Yesterday"),TW:r("This Week"),LW:r("Last Week"),TM:r("This Month"),LM:r("Last Month"),TY:r("This Year"),LY:r("Last Year")};function r(t){return null!=e.localizationMap&&null!=e.localizationMap[t]?e.localizationMap[t]:t}function i(){return-1!==[void 0,null,"",NaN].indexOf(e.firstDayOfWeek)||-1===[0,1,2,3,4,5,6].indexOf(e.firstDayOfWeek)?1:e.firstDayOfWeek}function a(e){var t,n,r=[],a=(new Date(e.getFullYear(),e.getMonth(),1),new Date(e.getFullYear(),e.getMonth()+1,0)),o=i();for(t=1;t<=a.getDate();t++)r.push(new Date(e.getFullYear(),e.getMonth(),t));for(n=r[0].getDay(),t=0;n!==o;)r.unshift(new Date(e.getFullYear(),e.getMonth(),t)),n=n<=0?6:n-1,t--;for(n=(r[r.length-1].getDay()+1)%7,t=1;n!==o;)r.push(new Date(e.getFullYear(),e.getMonth()+1,t)),n=(n+1)%7,t++;return r}function o(e,t){if(e&&t){var n=new Date(e.getFullYear(),e.getMonth(),e.getDate());return new Date(t.getFullYear(),t.getMonth(),t.getDate())-n}}SELECTION_TEMPLATES_CUSTOM={},e.isMenuContainer=!1,e.days=[],e.label="Date range picker",e.dates=[],e.dates2=[],e.numberOfMonthToDisplay=2,e.today=new Date,e.dateStart&&e.dateStart.setHours(0,0,0,0),e.dateEnd&&e.dateEnd.setHours(23,59,59,999),e.firstDayOfMonth=e.dateStart?new Date(e.dateStart.getFullYear(),e.dateStart.getMonth(),1):Date(e.today.getFullYear(),e.today.getMonth(),1),e.lastDayOfMonth=e.dateStart?new Date(e.dateStart.getFullYear(),e.dateStart.getMonth()+1,0):Date(e.today.getFullYear(),e.today.getMonth()+1,0),e.activeDate=e.dateStart||e.today,e.activeDate2=new Date(e.activeDate.getFullYear(),e.activeDate.getMonth()+1,1),e.activeMonth=e.activeDate.getMonth(),e.activeYear=e.activeDate.getFullYear(),e.activeMonth2=e.activeDate2.getMonth(),e.activeYear2=e.activeDate2.getFullYear(),e.months=[],e.years=[],e.inCurrentMonth=function(t,n){return n?t.getMonth()===e.activeMonth2&&t.getFullYear()===e.activeYear2:t.getMonth()===e.activeMonth&&t.getFullYear()===e.activeYear},e.isToday=function(e){return 0===o(e,new Date)},e.handleClickDate=function(t,n){var r=!1,i=!1;if(0===o(e.dateStart,e.dateEnd)){if(0===o(e.dateStart,n))i=!0,r=!0;else if(!e.isDisabledDate||!e.isDisabledDate({$date:n})){var a=o(e.dateStart,n);a>0?(e.maxRange&&Math.abs(Math.ceil(a/864e5))+1<=e.maxRange||!e.maxRange)&&(e.dateEnd=n,i=!0,r=!0):(e.maxRange&&Math.abs(Math.ceil(a/864e5))+1<=e.maxRange||!e.maxRange)&&(e.dateStart=n,i=!0,r=!0)}}else e.isDisabledDate&&e.isDisabledDate({$date:n})||(e.dateStart=n,e.dateEnd=n,r=!0);r&&(e.selectedTemplate=!1,e.selectedTemplateName=e.selectedDateText());return i},e.inSelectedDateRange=function(t){return!(!e.dateStart||!e.dateEnd)&&(o(e.dateStart,t)>=0&&0<=o(t,e.dateEnd))},e.isSelectedStartDate=function(t){return 0===o(e.dateStart,t)},e.isSelectedEndDate=function(t){return 0===o(e.dateEnd,t)},e.updateActiveDate=function(t){var n=new Date(e.activeYear,e.activeMonth,1),r=new Date(e.activeYear2,e.activeMonth2,1);t?(n=new Date(e.activeYear2,e.activeMonth2-1,1),e.activeYear=n.getFullYear(),e.activeMonth=n.getMonth()):(r=new Date(e.activeYear,e.activeMonth+1,1),e.activeYear2=r.getFullYear(),e.activeMonth2=r.getMonth());e.focusToDate(n)},e.selectedDateText=function(){return e.format&&"function"==typeof e.format?e.format(e.dateStart,e.dateEnd,e.selectedTemplate,e.selectedTemplateName):e.dateStart&&e.dateEnd?e.selectedTemplate?null!=SELECTION_TEMPLATES_CUSTOM&&null!=SELECTION_TEMPLATES_CUSTOM[e.selectedTemplate]?SELECTION_TEMPLATES_CUSTOM[e.selectedTemplate].name:n[e.selectedTemplate]:0===o(e.dateStart,e.dateEnd)?t("date")(e.dateStart,"dd MMM yyyy"):t("date")(e.dateStart,"dd"+(e.dateStart.getMonth()!==e.dateEnd.getMonth()||e.dateStart.getFullYear()!==e.dateEnd.getFullYear()?" MMM":"")+(e.dateStart.getFullYear()!==e.dateEnd.getFullYear()?" yyyy":""))+" - "+t("date")(e.dateEnd,"dd MMM yyyy"):""},e.focusToDate=function(t){var n=new Date(t.getFullYear(),t.getMonth()+1,1);e.activeDate=t,e.activeMonth=t.getMonth(),e.activeYear=t.getFullYear(),e.activeDate2=n,e.activeMonth2=n.getMonth(),e.activeYear2=n.getFullYear(),e.dates=a(t),e.dates2=a(n)},e.handleClickNextMonth=function(t){var n=new Date(e.activeDate.getFullYear(),e.activeDate.getMonth()+1,1);e.focusToDate(n)},e.handleClickPrevMonth=function(t){var n=new Date(e.activeDate.getFullYear(),e.activeDate.getMonth()-1,1);e.focusToDate(n)},e.handleClickSelectToday=function(){var t=new Date,n=new Date(t.getFullYear(),t.getMonth(),t.getDate());e.dateStart=n,e.dateEnd=n,e.selectedTemplate="TD",e.selectedTemplateName=e.selectedDateText()},e.handleClickSelectYesterday=function(){var t=new Date,n=new Date(t.getFullYear(),t.getMonth(),t.getDate()-1);e.dateStart=n,e.dateEnd=n,e.selectedTemplate="YD",e.selectedTemplateName=e.selectedDateText()},e.handleClickSelectThisWeek=function(){var t=new Date,n=new Date(t.getFullYear(),t.getMonth(),t.getDate()),r=new Date(n.getFullYear(),n.getMonth(),n.getDate()-(n.getDay()-i())),a=new Date(n.getFullYear(),n.getMonth(),n.getDate()+(6-n.getDay()+i()));e.dateStart=r,e.dateEnd=a,e.selectedTemplate="TW",e.selectedTemplateName=e.selectedDateText()},e.handleClickSelectLastWeek=function(){var t=new Date,n=new Date(t.getFullYear(),t.getMonth(),t.getDate()-7),r=new Date(n.getFullYear(),n.getMonth(),n.getDate()-(n.getDay()-i())),a=new Date(n.getFullYear(),n.getMonth(),n.getDate()+(6-n.getDay()+i()));e.dateStart=r,e.dateEnd=a,e.selectedTemplate="LW",e.selectedTemplateName=e.selectedDateText()},e.handleClickSelectThisMonth=function(){var t=new Date,n=new Date(t.getFullYear(),t.getMonth(),1),r=new Date(t.getFullYear(),t.getMonth()+1,0);e.dateStart=n,e.dateEnd=r,e.selectedTemplate="TM",e.selectedTemplateName=e.selectedDateText()},e.handleClickSelectLastMonth=function(){var t=new Date,n=new Date(t.getFullYear(),t.getMonth(),0),r=new Date(n.getFullYear(),n.getMonth(),1),i=new Date(n.getFullYear(),n.getMonth()+1,0);e.dateStart=r,e.dateEnd=i,e.selectedTemplate="LM",e.selectedTemplateName=e.selectedDateText()},e.handleClickSelectThisYear=function(){var t=new Date,n=new Date(t.getFullYear(),0,1),r=new Date(t.getFullYear(),11,31);e.dateStart=n,e.dateEnd=r,e.selectedTemplate="TY",e.selectedTemplateName=e.selectedDateText()},e.handleClickSelectLastYear=function(){var t=new Date,n=new Date(t.getFullYear()-1,0,1),r=new Date(t.getFullYear()-1,11,31);e.dateStart=n,e.dateEnd=r,e.selectedTemplate="LY",e.selectedTemplateName=e.selectedDateText()},e.getLocalizationVal=r,e.selectCustomRange=function(t,n){e.dateStart=n.dateStart,e.dateEnd=n.dateEnd,e.selectedTemplate=t,e.selectedTemplateName=e.selectedDateText()},e.isInMaxRange=function(t){if(!e.dateStart)return!0;if(0!==o(e.dateStart,e.dateEnd))return!0;var n=o(e.dateStart,t);return e.maxRange&&Math.abs(Math.ceil(n/864e5))+1<=e.maxRange||!e.maxRange},e.selectionTemplate={},function(){var a,o=0;if(null!=e.customTemplates)for(var s=0;s<e.customTemplates.length;s++)a=e.customTemplates[s],SELECTION_TEMPLATES_CUSTOM[a.name]=a;if(e.selectedTemplate){switch(e.selectedTemplate){case"TD":e.handleClickSelectToday();break;case"YD":e.handleClickSelectYesterday();break;case"TW":e.handleClickSelectThisWeek();break;case"LW":e.handleClickSelectLastWeek();break;case"TM":e.handleClickSelectThisMonth();break;case"LM":e.handleClickSelectLastMonth();break;case"TY":e.handleClickSelectThisYear();break;case"LY":e.handleClickSelectLastYear();break;default:SELECTION_TEMPLATES_CUSTOM&&SELECTION_TEMPLATES_CUSTOM[e.selectedTemplate]&&SELECTION_TEMPLATES_CUSTOM[e.selectedTemplate].dateStart&&SELECTION_TEMPLATES_CUSTOM[e.selectedTemplate].dateEnd&&(e.dateStart=SELECTION_TEMPLATES_CUSTOM[e.selectedTemplate].dateStart,e.dateEnd=SELECTION_TEMPLATES_CUSTOM[e.selectedTemplate].dateEnd),e.selectedTemplateName=e.selectedDateText()}e.updateActiveDate()}else e.selectedTemplate="",e.selectedTemplateName=e.selectedDateText(),e.updateActiveDate();e.$watch("selectedTemplate",(function(t,n){t===n||!e.dateStart||e.inCurrentMonth(e.dateStart)||e.inCurrentMonth(e.dateStart,!0)||e.focusToDate(e.dateStart)})),e.$watch("dateStart",(function(t,n){t===n||!e.dateStart||e.inCurrentMonth(e.dateStart)||e.inCurrentMonth(e.dateStart,!0)||e.focusToDate(e.dateStart)}));var l=new Date(2017,0,1);for(e.days=[],o=0;o<7;o++)l.setDate(o+1+i()),e.days.push({id:o,name:r(t("date")(l,"EEE"))});var c=null;for(e.months=[],o=0;o<12;o++)c=new Date(2017,o,1),e.months.push({id:o,name:r(t("date")(c,"MMMM"))});var u=e.activeYear,f=0;for(e.years=[],f=u-10;f<u+10;f++)e.years.push({id:f,name:r(f)});for(var d in n)n.hasOwnProperty(d)&&(null!=e.disableTemplates&&""!=e.disableTemplates?e.disableTemplates.indexOf(d)<0&&(e.selectionTemplate[d]=n[d]):e.selectionTemplate[d]=n[d])}()}function i(e){this.show=function(n){return e.show({locals:{mdDateRangePickerServiceModel:t.copy(n.model),mdDateRangePickerServiceConfig:t.copy(n)},controller:["$scope","mdDateRangePickerServiceModel","mdDateRangePickerServiceConfig",function(t,n,r){t.model=n||{},t.config=r||{},t.model.selectedTemplateName=t.model.selectedTemplateName||"",t.ok=function(){t.model.dateStart&&t.model.dateStart.setHours(0,0,0,0),t.model.dateEnd&&t.model.dateEnd.setHours(23,59,59,999),e.hide(t.model)},t.cancel=function(){e.cancel()},t.clear=function(){t.model.selectedTemplateName="",t.model.selectedTemplate=null,t.model.dateStart=null,t.model.dateEnd=null},t.handleOnSelect=function(e){"function"==typeof t.config.mdOnSelect&&t.config.mdOnSelect(e),t.config.autoConfirm&&t.ok()},t.getLocalizationVal=function(e){return t.model&&null!=t.model.localizationMap&&null!=t.model.localizationMap[e]?t.model.localizationMap[e]:e},t.model.customTemplates&&console.warn("model.customTemplates will be removed from model on next rlease, please use root config e.g. $mdDateRangePicker.show({customTemplates}) instead"),t.model.localizationMap&&console.warn("model.localizationMap will be removed from model on next rlease, please use root config e.g. $mdDateRangePicker.show({localizationMap}) instead"),t.model.firstDayOfWeek&&console.warn("model.firstDayOfWeek will be removed from model on next rlease, please use root config e.g. $mdDateRangePicker.show({firstDayOfWeek}) instead"),t.model.showTemplate&&console.warn("model.showTemplate will be removed from model on next rlease, please use root config e.g. $mdDateRangePicker.show({showTemplate}) instead"),t.model.maxRange&&console.warn("model.maxRange will be removed from model on next rlease, please use root config e.g. $mdDateRangePicker.show({maxRange}) instead"),t.model.onePanel&&console.warn("model.onePanel will be removed from model on next rlease, please use root config e.g. $mdDateRangePicker.show({onePanel}) instead"),t.model.isDisabledDate&&console.warn("model.isDisabledDate({ $date: $date }) will be removed from model on next rlease, please use root config e.g. $mdDateRangePicker.show({isDisabledDate:($date)=>{}}) instead")}],template:['<md-dialog aria-label="Date Range Picker">','<md-toolbar class="md-primary" layout="row" layout-align="start center">','<md-button aria-label="Date Range Picker" class="md-icon-button" aria-hidden="true" ng-disabled="true">','<md-icon md-svg-icon="data:image/svg+xml;base64,PHN2ZyBmaWxsPSIjRkZGRkZGIiBoZWlnaHQ9IjI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxwYXRoIGQ9Ik05IDExSDd2Mmgydi0yem00IDBoLTJ2Mmgydi0yem00IDBoLTJ2Mmgydi0yem0yLTdoLTFWMmgtMnYySDhWMkg2djJINWMtMS4xMSAwLTEuOTkuOS0xLjk5IDJMMyAyMGMwIDEuMS44OSAyIDIgMmgxNGMxLjEgMCAyLS45IDItMlY2YzAtMS4xLS45LTItMi0yem0wIDE2SDVWOWgxNHYxMXoiLz4KICAgIDxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz4KPC9zdmc+"></md-icon>',"</md-button>",'<span md-truncate class="md-toolbar-tools">{{model.selectedTemplateName}}</span>',"</md-toolbar>","<md-dialog-content>","<md-date-range-picker ",'date-start="model.dateStart" ','date-end="model.dateEnd" ','show-template="config.showTemplate || model.showTemplate" ','selected-template="model.selectedTemplate" ','selected-template-name="model.selectedTemplateName" ','first-day-of-week="config.firstDayOfWeek || model.firstDayOfWeek" ','localization-map="config.localizationMap || model.localizationMap" ','custom-templates="config.customTemplates || model.customTemplates" ','format="config.format" ','disable-templates="{{model.disableTemplates}}" ','md-on-select="handleOnSelect($dates)" ','is-disabled-date="config.isDisabledDate ? config.isDisabledDate($date) : model.isDisabledDate({ $date: $date })" ','max-range="config.maxRange || model.maxRange" ','one-panel="config.onePanel || model.onePanel" ',">","</md-date-range-picker>","</md-dialog-content>",'<md-dialog-actions layout="row" layout-align="end center">','<md-button ng-click="cancel()">{{getLocalizationVal("Cancel")}}</md-button>','<md-button ng-if="!config.autoConfirm" class="md-raised" ng-click="clear()">{{getLocalizationVal("Clear")}}</md-button>','<md-button ng-if="!config.autoConfirm" class="md-raised md-primary" ng-click="ok()">{{getLocalizationVal("Ok")}}</md-button>',"</md-dialog-actions>","</md-dialog>"].join(""),parent:t.element(document.body),multiple:n.multiple,targetEvent:n.targetEvent||document.body,clickOutsideToClose:!0,fullscreen:n.model.fullscreen})},this.getSelectedDate=function(e,t,n,r){var i=[],a=t.getTime(),o=e,s=0,l=e.getFullYear(),c=e.getMonth(),u=e.getDate();for(;o.getTime()<=a&&(n&&!n({$date:o})&&i.push(o),s++,o=new Date(l,c,u+s),!(s>(r||1e4))););return i}}t.module("ngMaterialDateRangePicker",["ngMaterial"]).directive("mdDateRangePicker",n).directive("mdDateRange",(function(){return{scope:{ngModel:"=ngModel",autoConfirm:"=autoConfirm",ngDisabled:"=ngDisabled",showTemplate:"=",placeholder:"@",isDisabledDate:"&",localizationMap:"=?",customTemplates:"=?",disableTemplates:"@",mdOnSelect:"&",onePanel:"=?",format:"=?",maxRange:"=?",firstDayOfWeek:"=?"},template:['<md-menu ng-disabled="ngDisabled">','<span class="md-select-value" ng-click="!ngDisabled && (($mdMenu && $mdMenu.open) ? $mdMenu.open($event) : $mdOpenMenu($event))">',"  <span>{{ngModel.selectedTemplateName || placeholder}}</span>",'  <span class="md-select-icon" aria-hidden="true"></span>',"</span>",'<md-menu-content class="md-custom-menu-content" style="max-height: none!important; height: auto!important; padding: 0!important;">','    <span style="text-align: left; padding: 12px 20px 0 20px" disabled>{{ngModel.selectedTemplateName || placeholder}}</span>','    <md-date-range-picker first-day-of-week="firstDayOfWeek" ','     md-on-select="autoConfirm && ok($dates)" ','     date-start="ngModel.dateStart" ','     date-end="ngModel.dateEnd" ','     selected-template="ngModel.selectedTemplate" ','     show-template="showTemplate" ','     localization-map="localizationMap" ','     custom-templates="customTemplates" ','     disable-templates="{{disableTemplates}}" ','     is-disabled-date="isDisabledDate({ $date: $date })" ','     max-range="maxRange" ','     one-panel="onePanel" ','     format="format" ','     selected-template-name="ngModel.selectedTemplateName"></md-date-range-picker>','<p ng-if="!autoConfirm" layout="row" layout-align="end center">','<md-button ng-if="ngModel.showClear" class="md-raised" ng-click="clear()">{{getLocalizationVal("Clear")}}</md-button>','<md-button class="md-raised md-primary" ng-click="ok()">{{getLocalizationVal("Ok")}}</md-button>',"</p>","</md-menu-content>","</md-menu>"].join(""),controller:["$scope","$mdMenu",function(e,t){e.ok=function(n){e.mdOnSelect({$dates:n}),t.hide()},e.clear=function(){e.ngModel.selectedTemplateName="",e.ngModel.selectedTemplate=null,e.ngModel.dateStart=null,e.ngModel.dateEnd=null},e.getLocalizationVal=function(t){return e.ngModel&&null!=e.ngModel.localizationMap&&null!=e.ngModel.localizationMap[t]?e.ngModel.localizationMap[t]:t}}]}})).controller("mdDateRangePickerCtrl",r).service("$mdDateRangePicker",i),n.$inject=["$mdDateRangePicker"],r.$inject=["$scope","$filter"],i.$inject=["$mdDialog"]}(window,angular),function(){var e,t="Fake/5.0 (FakeOS) AppleWebKit/123 (KHTML, like Gecko) Fake/12.3.4567.89 Fake/123.45";if(b="object"==typeof process&&"object"==typeof process.versions&&process.versions.node&&!process.browser){var n=process.versions.node.toString().replace("v","");t="Nodejs/"+n+" (NodeOS) AppleWebKit/"+n+" (KHTML, like Gecko) Nodejs/"+n+" Nodejs/"+n}e="undefined"!=typeof global?global:window,"undefined"==typeof window&&("undefined"==typeof window&&"undefined"!=typeof global&&(global.navigator={userAgent:t,getUserMedia:function(){}},e.window=global),"undefined"==typeof location&&(e.location={protocol:"file:",href:"",hash:""}),"undefined"==typeof screen&&(e.screen={width:0,height:0}));var r=window.navigator;void 0!==r?(void 0!==r.webkitGetUserMedia&&(r.getUserMedia=r.webkitGetUserMedia),void 0!==r.mozGetUserMedia&&(r.getUserMedia=r.mozGetUserMedia)):r={getUserMedia:function(){},userAgent:t};var i=!!/Android|webOS|iPhone|iPad|iPod|BB10|BlackBerry|IEMobile|Opera Mini|Mobile|mobile/i.test(r.userAgent||""),a=!(-1===r.userAgent.indexOf("Edge")||!r.msSaveOrOpenBlob&&!r.msSaveBlob),o=!!window.opera||r.userAgent.indexOf(" OPR/")>=0,s=r.userAgent.toLowerCase().indexOf("firefox")>-1&&"netscape"in window&&/ rv:/.test(r.userAgent),l=/^((?!chrome|android).)*safari/i.test(r.userAgent),c=!!window.chrome&&!o,u="undefined"!=typeof document&&!!document.documentMode&&!a;function f(e,t){var n=0,r=!1,i=window.setInterval((function(){e()&&(window.clearInterval(i),t(r)),n++>50&&(window.clearInterval(i),t(r=!0))}),10)}var d={Android:function(){return r.userAgent.match(/Android/i)},BlackBerry:function(){return r.userAgent.match(/BlackBerry|BB10/i)},iOS:function(){return r.userAgent.match(/iPhone|iPad|iPod/i)},Opera:function(){return r.userAgent.match(/Opera Mini/i)},Windows:function(){return r.userAgent.match(/IEMobile/i)},any:function(){return d.Android()||d.BlackBerry()||d.iOS()||d.Opera()||d.Windows()},getOsName:function(){var e="Unknown OS";return d.Android()&&(e="Android"),d.BlackBerry()&&(e="BlackBerry"),d.iOS()&&(e="iOS"),d.Opera()&&(e="Opera Mini"),d.Windows()&&(e="Windows"),e}};var h="Unknown OS",p="Unknown OS Version";var m,g,_=function(){for(var e,t=r.appVersion,n=r.userAgent,i="-",a=[{s:"Chrome OS",r:/CrOS/},{s:"Windows 10",r:/(Windows 10.0|Windows NT 10.0)/},{s:"Windows 8.1",r:/(Windows 8.1|Windows NT 6.3)/},{s:"Windows 8",r:/(Windows 8|Windows NT 6.2)/},{s:"Windows 7",r:/(Windows 7|Windows NT 6.1)/},{s:"Windows Vista",r:/Windows NT 6.0/},{s:"Windows Server 2003",r:/Windows NT 5.2/},{s:"Windows XP",r:/(Windows NT 5.1|Windows XP)/},{s:"Windows 2000",r:/(Windows NT 5.0|Windows 2000)/},{s:"Windows ME",r:/(Win 9x 4.90|Windows ME)/},{s:"Windows 98",r:/(Windows 98|Win98)/},{s:"Windows 95",r:/(Windows 95|Win95|Windows_95)/},{s:"Windows NT 4.0",r:/(Windows NT 4.0|WinNT4.0|WinNT|Windows NT)/},{s:"Windows CE",r:/Windows CE/},{s:"Windows 3.11",r:/Win16/},{s:"Android",r:/Android/},{s:"Open BSD",r:/OpenBSD/},{s:"Sun OS",r:/SunOS/},{s:"Linux",r:/(Linux|X11)/},{s:"iOS",r:/(iPhone|iPad|iPod)/},{s:"Mac OS X",r:/Mac OS X/},{s:"Mac OS",r:/(MacPPC|MacIntel|Mac_PowerPC|Macintosh)/},{s:"QNX",r:/QNX/},{s:"UNIX",r:/UNIX/},{s:"BeOS",r:/BeOS/},{s:"OS/2",r:/OS\/2/},{s:"Search Bot",r:/(nuhk|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask Jeeves\/Teoma|ia_archiver)/}],o=0;e=a[o];o++)if(e.r.test(n)){i=e.s;break}var s="-";switch(/Windows/.test(i)&&(/Windows (.*)/.test(i)&&(s=/Windows (.*)/.exec(i)[1]),i="Windows"),i){case"Mac OS X":/Mac OS X (10[\.\_\d]+)/.test(n)&&(s=/Mac OS X (10[\.\_\d]+)/.exec(n)[1]);break;case"Android":/Android ([\.\_\d]+)/.test(n)&&(s=/Android ([\.\_\d]+)/.exec(n)[1]);break;case"iOS":/OS (\d+)_(\d+)_?(\d+)?/.test(n)&&(s=(s=/OS (\d+)_(\d+)_?(\d+)?/.exec(t))[1]+"."+s[2]+"."+(0|s[3]))}return{osName:i,osVersion:s}}();_&&_.osName&&"-"!=_.osName?(h=_.osName,p=_.osVersion):d.any()&&"Android"==(h=d.getOsName())&&(p=!!(g=(m=(m||r.userAgent).toLowerCase()).match(/android\s([0-9\.]*)/))&&g[1]);var b="object"==typeof process&&"object"==typeof process.versions&&process.versions.node;"Unknown OS"===h&&b&&(h="Nodejs",p=process.versions.node.toString().replace("v",""));var v=!1,y=!1;["captureStream","mozCaptureStream","webkitCaptureStream"].forEach((function(e){"undefined"!=typeof document&&"function"==typeof document.createElement&&(!v&&e in document.createElement("canvas")&&(v=!0),!y&&e in document.createElement("video")&&(y=!0))}));var w=/^(192\.168\.|169\.254\.|10\.|172\.(1[6-9]|2\d|3[01]))/,C=/([0-9]{1,3}(\.[0-9]{1,3}){3})/,A=/[a-f0-9]{1,4}(:[a-f0-9]{1,4}){7}/;var S=[],x=[],T=[],k=[];r.mediaDevices&&r.mediaDevices.enumerateDevices&&(r.enumerateDevices=function(e){var t=r.mediaDevices.enumerateDevices();t&&t.then?r.mediaDevices.enumerateDevices().then(e).catch((function(){e([])})):e([])});var E=!1;("undefined"!=typeof MediaStreamTrack&&"getSources"in MediaStreamTrack||r.mediaDevices&&r.mediaDevices.enumerateDevices)&&(E=!0);var D=!1,I=!1,P=!1,M=!1,$=!1;function O(e){if(E)if(!r.enumerateDevices&&window.MediaStreamTrack&&window.MediaStreamTrack.getSources&&(r.enumerateDevices=window.MediaStreamTrack.getSources.bind(window.MediaStreamTrack)),!r.enumerateDevices&&r.enumerateDevices&&(r.enumerateDevices=r.enumerateDevices.bind(r)),r.enumerateDevices){S=[],x=[],T=[],k=[],D=!1,I=!1,P=!1,M=!1,$=!1;var t={};r.enumerateDevices((function(n){S=[],x=[],T=[],k=[],n.forEach((function(e){var n={};for(var r in e)try{"function"!=typeof e[r]&&(n[r]=e[r])}catch(e){}t[n.deviceId+n.label+n.kind]||("audio"===n.kind&&(n.kind="audioinput"),"video"===n.kind&&(n.kind="videoinput"),n.deviceId||(n.deviceId=n.id),n.id||(n.id=n.deviceId),n.label?("videoinput"!==n.kind||$||($=!0),"audioinput"!==n.kind||M||(M=!0)):(n.isCustomLabel=!0,"videoinput"===n.kind?n.label="Camera "+(k.length+1):"audioinput"===n.kind?n.label="Microphone "+(x.length+1):"audiooutput"===n.kind?n.label="Speaker "+(T.length+1):n.label="Please invoke getUserMedia once.",void 0!==R&&R.browser.isChrome&&R.browser.version>=46&&!/^(https:|chrome-extension:)$/g.test(location.protocol||"")&&"undefined"!=typeof document&&"string"==typeof document.domain&&document.domain.search&&-1===document.domain.search(/localhost|127.0./g)&&(n.label="HTTPs is required to get label of this "+n.kind+" device.")),"audioinput"===n.kind&&(D=!0,-1===x.indexOf(n)&&x.push(n)),"audiooutput"===n.kind&&(I=!0,-1===T.indexOf(n)&&T.push(n)),"videoinput"===n.kind&&(P=!0,-1===k.indexOf(n)&&k.push(n)),S.push(n),t[n.deviceId+n.label+n.kind]=n)})),void 0!==R&&(R.MediaDevices=S,R.hasMicrophone=D,R.hasSpeakers=I,R.hasWebcam=P,R.isWebsiteHasWebcamPermissions=$,R.isWebsiteHasMicrophonePermissions=M,R.audioInputDevices=x,R.audioOutputDevices=T,R.videoInputDevices=k),e&&e()}))}else e&&e();else e&&e()}var R=window.DetectRTC||{};R.browser=function(){r.appVersion;var e,t,n,i=r.userAgent,f=r.appName,d=""+parseFloat(r.appVersion),h=parseInt(r.appVersion,10);if(o){f="Opera";try{h=(d=r.userAgent.split("OPR/")[1].split(" ")[0]).split(".")[0]}catch(e){d="0.0.0.0",h=0}}else u?((t=i.indexOf("rv:"))>0?d=i.substring(t+3):(t=i.indexOf("MSIE"),d=i.substring(t+5)),f="IE"):c?(t=i.indexOf("Chrome"),f="Chrome",d=i.substring(t+7)):l?-1!==i.indexOf("CriOS")?(t=i.indexOf("CriOS"),f="Chrome",d=i.substring(t+6)):-1!==i.indexOf("FxiOS")?(t=i.indexOf("FxiOS"),f="Firefox",d=i.substring(t+6)):(t=i.indexOf("Safari"),f="Safari",d=i.substring(t+7),-1!==(t=i.indexOf("Version"))&&(d=i.substring(t+8)),-1!==r.userAgent.indexOf("Version/")&&(d=r.userAgent.split("Version/")[1].split(" ")[0])):s?(t=i.indexOf("Firefox"),f="Firefox",d=i.substring(t+8)):(e=i.lastIndexOf(" ")+1)<(t=i.lastIndexOf("/"))&&(f=i.substring(e,t),d=i.substring(t+1),f.toLowerCase()===f.toUpperCase()&&(f=r.appName));return a&&(f="Edge",d=r.userAgent.split("Edge/")[1]),-1!==(n=d.search(/[; \)]/))&&(d=d.substring(0,n)),h=parseInt(""+d,10),isNaN(h)&&(d=""+parseFloat(r.appVersion),h=parseInt(r.appVersion,10)),{fullVersion:d,version:h,name:f,isPrivateBrowsing:!1}}(),function(e){var t;try{if(window.webkitRequestFileSystem)window.webkitRequestFileSystem(window.TEMPORARY,1,(function(){t=!1}),(function(e){t=!0}));else if(window.indexedDB&&/Firefox/.test(window.navigator.userAgent)){var n;try{(n=window.indexedDB.open("test")).onerror=function(){return!0}}catch(e){t=!0}void 0===t&&f((function(){return"done"===n.readyState}),(function(e){e||(t=!n.result)}))}else if(function(e){var t=e.toLowerCase();if(0===t.indexOf("msie")&&0===t.indexOf("trident"))return!1;var n=/(?:msie|rv:)\s?([\d\.]+)/.exec(t);return!!(n&&parseInt(n[1],10)>=10)}(window.navigator.userAgent)){t=!1;try{window.indexedDB||(t=!0)}catch(e){t=!0}}else if(window.localStorage&&/Safari/.test(window.navigator.userAgent)){try{window.localStorage.setItem("test",1)}catch(e){t=!0}void 0===t&&(t=!1,window.localStorage.removeItem("test"))}}catch(e){t=!1}f((function(){return void 0!==t}),(function(n){e(t)}))}((function(e){R.browser.isPrivateBrowsing=!!e})),R.browser["is"+R.browser.name]=!0,R.osName=h,R.osVersion=p;"object"==typeof process&&"object"==typeof process.versions&&process.versions["node-webkit"];var N=!1;["RTCPeerConnection","webkitRTCPeerConnection","mozRTCPeerConnection","RTCIceGatherer"].forEach((function(e){N||e in window&&(N=!0)})),R.isWebRTCSupported=N,R.isORTCSupported="undefined"!=typeof RTCIceGatherer;var L=!1;((R.browser.isChrome&&R.browser.version>=35||R.browser.isFirefox&&R.browser.version>=34||R.browser.isEdge&&R.browser.version>=17||"Android"===R.osName&&R.browser.isChrome)&&(L=!0),(r.getDisplayMedia||r.mediaDevices&&r.mediaDevices.getDisplayMedia)&&(L=!0),/^(https:|chrome-extension:)$/g.test(location.protocol||""))||("undefined"!=typeof document&&"string"==typeof document.domain&&document.domain.search&&-1===document.domain.search(/localhost|127.0./g)&&(R.browser.isChrome||R.browser.isEdge||R.browser.isOpera)||R.browser.isFirefox)&&(L=!1);R.isScreenCapturingSupported=L;var F={isSupported:!1,isCreateMediaStreamSourceSupported:!1};["AudioContext","webkitAudioContext","mozAudioContext","msAudioContext"].forEach((function(e){F.isSupported||e in window&&(F.isSupported=!0,window[e]&&"createMediaStreamSource"in window[e].prototype&&(F.isCreateMediaStreamSourceSupported=!0))})),R.isAudioContextSupported=F.isSupported,R.isCreateMediaStreamSourceSupported=F.isCreateMediaStreamSourceSupported;var G=!1;R.browser.isChrome&&R.browser.version>31&&(G=!0),R.isRtpDataChannelsSupported=G;var j=!1;(R.browser.isFirefox&&R.browser.version>28||R.browser.isChrome&&R.browser.version>25||R.browser.isOpera&&R.browser.version>=11)&&(j=!0),R.isSctpDataChannelsSupported=j,R.isMobileDevice=i;var B=!1;(r.getUserMedia||r.mediaDevices&&r.mediaDevices.getUserMedia)&&(B=!0),R.browser.isChrome&&R.browser.version>=46&&!/^(https:|chrome-extension:)$/g.test(location.protocol||"")&&"undefined"!=typeof document&&"string"==typeof document.domain&&document.domain.search&&-1===document.domain.search(/localhost|127.0./g)&&(B="Requires HTTPs"),"Nodejs"===R.osName&&(B=!1),R.isGetUserMediaSupported=B;var U,H,W,q="";screen.width&&(q+=(screen.width?screen.width:"")+" x "+(screen.height?screen.height:""));R.displayResolution=q,R.displayAspectRatio=(U=screen.width,H=screen.height,W=function e(t,n){return 0==n?t:e(n,t%n)}(U,H),U/W/(H/W)).toFixed(2),R.isCanvasSupportsStreamCapturing=v,R.isVideoSupportsStreamCapturing=y,"Chrome"==R.browser.name&&R.browser.version>=53&&(R.isCanvasSupportsStreamCapturing||(R.isCanvasSupportsStreamCapturing="Requires chrome flag: enable-experimental-web-platform-features"),R.isVideoSupportsStreamCapturing||(R.isVideoSupportsStreamCapturing="Requires chrome flag: enable-experimental-web-platform-features")),R.DetectLocalIPAddress=function(e,t){if(R.isWebRTCSupported){var n=!0,r=!0;!function(e,t){if("undefined"==typeof document||"function"!=typeof document.getElementById)return;var n={},r=window.RTCPeerConnection||window.mozRTCPeerConnection||window.webkitRTCPeerConnection;if(!r){var i=document.getElementById("iframe");if(!i)return;var a=i.contentWindow;r=a.RTCPeerConnection||a.mozRTCPeerConnection||a.webkitRTCPeerConnection}if(!r)return;var o=null;"Chrome"===R.browser&&R.browser.version<58&&(o={optional:[{RtpDataChannels:!0}]});var s=new r({iceServers:[{urls:"stun:stun.l.google.com:19302"}]},o);t&&(s.addStream?s.addStream(t):s.addTrack&&t.getTracks()[0]&&s.addTrack(t.getTracks()[0],t));function l(t){if(t){var r=C.exec(t);if(r){var i=r[1],a=t.match(w);void 0===n[i]&&e(i,a,!0),n[i]=!0}}else e()}if(s.onicecandidate=function(e){e.candidate&&e.candidate.candidate?l(e.candidate.candidate):l()},!t)try{s.createDataChannel("sctp",{})}catch(e){}R.isPromisesSupported?s.createOffer().then((function(e){s.setLocalDescription(e).then(c)})):s.createOffer((function(e){s.setLocalDescription(e,c,(function(){}))}),(function(){}));function c(){s.localDescription.sdp.split("\n").forEach((function(e){e&&0===e.indexOf("a=candidate:")&&l(e)}))}}((function(t){t?t.match(w)?e("Local: "+t,n=!1,r):t.match(A)?e("Public: "+t,n,r=!1):e("Public: "+t,n,r):e()}),t)}},R.isWebSocketsSupported="WebSocket"in window&&2===window.WebSocket.CLOSING,R.isWebSocketsBlocked=!R.isWebSocketsSupported,"Nodejs"===R.osName&&(R.isWebSocketsSupported=!0,R.isWebSocketsBlocked=!1),R.checkWebSocketsSupport=function(e){e=e||function(){};try{var t,n=new WebSocket("wss://echo.websocket.org:443/");n.onopen=function(){R.isWebSocketsBlocked=!1,t=(new Date).getTime(),n.send("ping")},n.onmessage=function(){R.WebsocketLatency=(new Date).getTime()-t+"ms",e(),n.close(),n=null},n.onerror=function(){R.isWebSocketsBlocked=!0,e()}}catch(t){R.isWebSocketsBlocked=!0,e()}},R.load=function(e){O(e=e||function(){})},R.MediaDevices=void 0!==S?S:[],R.hasMicrophone=D,R.hasSpeakers=I,R.hasWebcam=P,R.isWebsiteHasWebcamPermissions=$,R.isWebsiteHasMicrophonePermissions=M,R.audioInputDevices=x,R.audioOutputDevices=T,R.videoInputDevices=k;var z=!1;"undefined"!=typeof document&&"function"==typeof document.createElement&&"setSinkId"in document.createElement("video")&&(z=!0),R.isSetSinkIdSupported=z;var V=!1;R.browser.isFirefox&&"undefined"!=typeof mozRTCPeerConnection?"getSenders"in mozRTCPeerConnection.prototype&&(V=!0):R.browser.isChrome&&"undefined"!=typeof webkitRTCPeerConnection&&"getSenders"in webkitRTCPeerConnection.prototype&&(V=!0),R.isRTPSenderReplaceTracksSupported=V;var Y=!1;R.browser.isFirefox&&R.browser.version>38&&(Y=!0),R.isRemoteStreamProcessingSupported=Y;var K=!1;"undefined"!=typeof MediaStreamTrack&&"applyConstraints"in MediaStreamTrack.prototype&&(K=!0),R.isApplyConstraintsSupported=K;var Q=!1;R.browser.isFirefox&&R.browser.version>=43&&(Q=!0),R.isMultiMonitorScreenCapturingSupported=Q,R.isPromisesSupported=!!("Promise"in window),R.version="1.4.0",void 0===R&&(window.DetectRTC={});var X=window.MediaStream;void 0===X&&"undefined"!=typeof webkitMediaStream&&(X=webkitMediaStream),R.MediaStream=void 0!==X&&"function"==typeof X&&Object.keys(X.prototype),"undefined"!=typeof MediaStreamTrack?R.MediaStreamTrack=Object.keys(MediaStreamTrack.prototype):R.MediaStreamTrack=!1;var Z=window.RTCPeerConnection||window.mozRTCPeerConnection||window.webkitRTCPeerConnection;R.RTCPeerConnection=void 0!==Z&&Object.keys(Z.prototype),window.DetectRTC=R,"undefined"!=typeof module&&(module.exports=R),"function"==typeof define&&define.amd&&define("DetectRTC",[],(function(){return R}))}(),
-/*! Copyright (c) 2014 Hidenari Nozaki and contributors | Licensed under the MIT license */
-/*!
- * Chart.js v2.9.3
- * https://www.chartjs.org
- * (c) 2019 Chart.js Contributors
- * Released under the MIT License
- */
-/*!
- * angular-chart.js - An angular.js wrapper for Chart.js
- * http://jtblin.github.io/angular-chart.js/
- * Version: 1.1.1
- *
- * Copyright 2016 Jerome Touffe-Blin
- * Released under the BSD-2-Clause license
- * https://github.com/jtblin/angular-chart.js/blob/master/LICENSE
- */
-/*!
- * mustache.js - Logic-less {{mustache}} templates with JavaScript
- * http://github.com/janl/mustache.js
- */
-/**!
- * AngularJS file upload directives and services. Supoorts: file upload/drop/paste, resume, cancel/abort,
- * progress, resize, thumbnail, preview, validation and CORS
- * @author  Danial  <[email-masked]>
- * @version 12.2.13
- */
-/*! Moment Duration Format v2.2.2
- *  https://github.com/jsmreese/moment-duration-format
- *  Date: 2018-02-16
- *
- *  Duration format plugin function for the Moment.js library
- *  http://momentjs.com/
- *
- *  Copyright 2018 John Madhavan-Reese
- *  Released under the MIT license
- */
-/**
- * @license MIT
- */
\ No newline at end of file
diff --git a/server/api/action/action.attributes.js b/server/api/action/action.attributes.js
index fbb7d73..2a3904e 100644
--- a/server/api/action/action.attributes.js
+++ b/server/api/action/action.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/action/action.controller.js b/server/api/action/action.controller.js
index 490c193..5a8d104 100644
--- a/server/api/action/action.controller.js
+++ b/server/api/action/action.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/action/action.model.js b/server/api/action/action.model.js
index 532ceb0..f9c2e7b 100644
--- a/server/api/action/action.model.js
+++ b/server/api/action/action.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/action/action.rpc.js b/server/api/action/action.rpc.js
index 8c7a1ee..5381de1 100644
--- a/server/api/action/action.rpc.js
+++ b/server/api/action/action.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/action/index.js b/server/api/action/index.js
index ede1c9c..eea2d25 100644
--- a/server/api/action/index.js
+++ b/server/api/action/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticCustomReport/analyticCustomReport.attributes.js b/server/api/analyticCustomReport/analyticCustomReport.attributes.js
index 20df373..ec77aae 100644
--- a/server/api/analyticCustomReport/analyticCustomReport.attributes.js
+++ b/server/api/analyticCustomReport/analyticCustomReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticCustomReport/analyticCustomReport.controller.js b/server/api/analyticCustomReport/analyticCustomReport.controller.js
index f9763d7..c542b0b 100644
--- a/server/api/analyticCustomReport/analyticCustomReport.controller.js
+++ b/server/api/analyticCustomReport/analyticCustomReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticCustomReport/analyticCustomReport.model.js b/server/api/analyticCustomReport/analyticCustomReport.model.js
index 40e35a2..3c77c63 100644
--- a/server/api/analyticCustomReport/analyticCustomReport.model.js
+++ b/server/api/analyticCustomReport/analyticCustomReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticCustomReport/analyticCustomReport.rpc.js b/server/api/analyticCustomReport/analyticCustomReport.rpc.js
index eede705..e959c3f 100644
--- a/server/api/analyticCustomReport/analyticCustomReport.rpc.js
+++ b/server/api/analyticCustomReport/analyticCustomReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticCustomReport/index.js b/server/api/analyticCustomReport/index.js
index 1ffa78c..4d69999 100644
--- a/server/api/analyticCustomReport/index.js
+++ b/server/api/analyticCustomReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticDefaultReport/analyticDefaultReport.attributes.js b/server/api/analyticDefaultReport/analyticDefaultReport.attributes.js
index c670261..c0265f0 100644
--- a/server/api/analyticDefaultReport/analyticDefaultReport.attributes.js
+++ b/server/api/analyticDefaultReport/analyticDefaultReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticDefaultReport/analyticDefaultReport.controller.js b/server/api/analyticDefaultReport/analyticDefaultReport.controller.js
index f883668..cd62c4b 100644
--- a/server/api/analyticDefaultReport/analyticDefaultReport.controller.js
+++ b/server/api/analyticDefaultReport/analyticDefaultReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticDefaultReport/analyticDefaultReport.model.js b/server/api/analyticDefaultReport/analyticDefaultReport.model.js
index da645f3..c79d003 100644
--- a/server/api/analyticDefaultReport/analyticDefaultReport.model.js
+++ b/server/api/analyticDefaultReport/analyticDefaultReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticDefaultReport/analyticDefaultReport.rpc.js b/server/api/analyticDefaultReport/analyticDefaultReport.rpc.js
index 24c12e8..d4bb689 100644
--- a/server/api/analyticDefaultReport/analyticDefaultReport.rpc.js
+++ b/server/api/analyticDefaultReport/analyticDefaultReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticDefaultReport/index.js b/server/api/analyticDefaultReport/index.js
index df50a30..516a8c3 100644
--- a/server/api/analyticDefaultReport/index.js
+++ b/server/api/analyticDefaultReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticExtractedReport/analyticExtractedReport.attributes.js b/server/api/analyticExtractedReport/analyticExtractedReport.attributes.js
index 98740f9..88808c7 100644
--- a/server/api/analyticExtractedReport/analyticExtractedReport.attributes.js
+++ b/server/api/analyticExtractedReport/analyticExtractedReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticExtractedReport/analyticExtractedReport.controller.js b/server/api/analyticExtractedReport/analyticExtractedReport.controller.js
index 356f2c4..97c0459 100644
--- a/server/api/analyticExtractedReport/analyticExtractedReport.controller.js
+++ b/server/api/analyticExtractedReport/analyticExtractedReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticExtractedReport/analyticExtractedReport.model.js b/server/api/analyticExtractedReport/analyticExtractedReport.model.js
index a45fc18..12b56ca 100644
--- a/server/api/analyticExtractedReport/analyticExtractedReport.model.js
+++ b/server/api/analyticExtractedReport/analyticExtractedReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticExtractedReport/analyticExtractedReport.rpc.js b/server/api/analyticExtractedReport/analyticExtractedReport.rpc.js
index 5dee52f..686fdc1 100644
--- a/server/api/analyticExtractedReport/analyticExtractedReport.rpc.js
+++ b/server/api/analyticExtractedReport/analyticExtractedReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticExtractedReport/index.js b/server/api/analyticExtractedReport/index.js
index 3847384..e080ee3 100644
--- a/server/api/analyticExtractedReport/index.js
+++ b/server/api/analyticExtractedReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticFieldReport/analyticFieldReport.attributes.js b/server/api/analyticFieldReport/analyticFieldReport.attributes.js
index dcf745c..4a361be 100644
--- a/server/api/analyticFieldReport/analyticFieldReport.attributes.js
+++ b/server/api/analyticFieldReport/analyticFieldReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticFieldReport/analyticFieldReport.controller.js b/server/api/analyticFieldReport/analyticFieldReport.controller.js
index 3a8317d..ccc3c90 100644
--- a/server/api/analyticFieldReport/analyticFieldReport.controller.js
+++ b/server/api/analyticFieldReport/analyticFieldReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticFieldReport/analyticFieldReport.model.js b/server/api/analyticFieldReport/analyticFieldReport.model.js
index 41d4cd6..d99a25e 100644
--- a/server/api/analyticFieldReport/analyticFieldReport.model.js
+++ b/server/api/analyticFieldReport/analyticFieldReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticFieldReport/analyticFieldReport.rpc.js b/server/api/analyticFieldReport/analyticFieldReport.rpc.js
index 89ae73c..c01a290 100644
--- a/server/api/analyticFieldReport/analyticFieldReport.rpc.js
+++ b/server/api/analyticFieldReport/analyticFieldReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticFieldReport/index.js b/server/api/analyticFieldReport/index.js
index e34545b..004aa62 100644
--- a/server/api/analyticFieldReport/index.js
+++ b/server/api/analyticFieldReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticMetric/analyticMetric.attributes.js b/server/api/analyticMetric/analyticMetric.attributes.js
index 1f00574..934e2a0 100644
--- a/server/api/analyticMetric/analyticMetric.attributes.js
+++ b/server/api/analyticMetric/analyticMetric.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticMetric/analyticMetric.controller.js b/server/api/analyticMetric/analyticMetric.controller.js
index 5c7b3a0..63b3a84 100644
--- a/server/api/analyticMetric/analyticMetric.controller.js
+++ b/server/api/analyticMetric/analyticMetric.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticMetric/analyticMetric.model.js b/server/api/analyticMetric/analyticMetric.model.js
index 821d650..6a2375c 100644
--- a/server/api/analyticMetric/analyticMetric.model.js
+++ b/server/api/analyticMetric/analyticMetric.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticMetric/analyticMetric.rpc.js b/server/api/analyticMetric/analyticMetric.rpc.js
index 85ad70b..a6ca252 100644
--- a/server/api/analyticMetric/analyticMetric.rpc.js
+++ b/server/api/analyticMetric/analyticMetric.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticMetric/index.js b/server/api/analyticMetric/index.js
index 2bdf82a..9c38b9d 100644
--- a/server/api/analyticMetric/index.js
+++ b/server/api/analyticMetric/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticTreeReport/analyticTreeReport.attributes.js b/server/api/analyticTreeReport/analyticTreeReport.attributes.js
index 0b71d47..48a4dd8 100644
--- a/server/api/analyticTreeReport/analyticTreeReport.attributes.js
+++ b/server/api/analyticTreeReport/analyticTreeReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
-var _0x62b1=['exports','TEXT'];(function(_0x3d4f39,_0x4c971f){var _0x5d1177=function(_0x194341){while(--_0x194341){_0x3d4f39['push'](_0x3d4f39['shift']());}};_0x5d1177(++_0x4c971f);}(_0x62b1,0xba));var _0x162b=function(_0x43a1f4,_0x21ab1a){_0x43a1f4=_0x43a1f4-0x0;var _0x44b85f=_0x62b1[_0x43a1f4];return _0x44b85f;};'use strict';var Sequelize=require('sequelize');module[_0x162b('0x0')]={'tree':{'type':Sequelize[_0x162b('0x1')],'allowNull':![]}};
\ No newline at end of file
+var _0x16d7=['exports','sequelize'];(function(_0x18b232,_0x3cd1e9){var _0x303efe=function(_0xac931d){while(--_0xac931d){_0x18b232['push'](_0x18b232['shift']());}};_0x303efe(++_0x3cd1e9);}(_0x16d7,0x1a9));var _0x716d=function(_0x5db05c,_0x9fddff){_0x5db05c=_0x5db05c-0x0;var _0x1726f1=_0x16d7[_0x5db05c];return _0x1726f1;};'use strict';var Sequelize=require(_0x716d('0x0'));module[_0x716d('0x1')]={'tree':{'type':Sequelize['TEXT'],'allowNull':![]}};
\ No newline at end of file
diff --git a/server/api/analyticTreeReport/analyticTreeReport.controller.js b/server/api/analyticTreeReport/analyticTreeReport.controller.js
index 5a19357..6f07ce2 100644
--- a/server/api/analyticTreeReport/analyticTreeReport.controller.js
+++ b/server/api/analyticTreeReport/analyticTreeReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticTreeReport/analyticTreeReport.model.js b/server/api/analyticTreeReport/analyticTreeReport.model.js
index 26aa682..097118c 100644
--- a/server/api/analyticTreeReport/analyticTreeReport.model.js
+++ b/server/api/analyticTreeReport/analyticTreeReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticTreeReport/analyticTreeReport.rpc.js b/server/api/analyticTreeReport/analyticTreeReport.rpc.js
index 9e3ee2b..9be32d7 100644
--- a/server/api/analyticTreeReport/analyticTreeReport.rpc.js
+++ b/server/api/analyticTreeReport/analyticTreeReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/analyticTreeReport/index.js b/server/api/analyticTreeReport/index.js
index d4e2e12..d6d1aee 100644
--- a/server/api/analyticTreeReport/index.js
+++ b/server/api/analyticTreeReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/attachment/attachment.attributes.js b/server/api/attachment/attachment.attributes.js
index bf05f8f..fc6e7c5 100644
--- a/server/api/attachment/attachment.attributes.js
+++ b/server/api/attachment/attachment.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/attachment/attachment.controller.js b/server/api/attachment/attachment.controller.js
index 897a9a5..0f4f686 100644
--- a/server/api/attachment/attachment.controller.js
+++ b/server/api/attachment/attachment.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/attachment/attachment.model.js b/server/api/attachment/attachment.model.js
index b402056..e254c85 100644
--- a/server/api/attachment/attachment.model.js
+++ b/server/api/attachment/attachment.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/attachment/attachment.rpc.js b/server/api/attachment/attachment.rpc.js
index 64912ef..5800a61 100644
--- a/server/api/attachment/attachment.rpc.js
+++ b/server/api/attachment/attachment.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/attachment/index.js b/server/api/attachment/index.js
index 802ff08..b0a05bb 100644
--- a/server/api/attachment/index.js
+++ b/server/api/attachment/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/authGoogle/authGoogle.controller.js b/server/api/authGoogle/authGoogle.controller.js
index 7f657db..a8f08c2 100644
--- a/server/api/authGoogle/authGoogle.controller.js
+++ b/server/api/authGoogle/authGoogle.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/authGoogle/index.js b/server/api/authGoogle/index.js
index b457447..9ed02f0 100644
--- a/server/api/authGoogle/index.js
+++ b/server/api/authGoogle/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/authLocal/authLocal.controller.js b/server/api/authLocal/authLocal.controller.js
index 7509064..4ffa149 100644
--- a/server/api/authLocal/authLocal.controller.js
+++ b/server/api/authLocal/authLocal.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/authLocal/index.js b/server/api/authLocal/index.js
index 3b2e66d..96bb139 100644
--- a/server/api/authLocal/index.js
+++ b/server/api/authLocal/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/automation/automation.attributes.js b/server/api/automation/automation.attributes.js
index f3b5809..3d2f206 100644
--- a/server/api/automation/automation.attributes.js
+++ b/server/api/automation/automation.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/automation/automation.controller.js b/server/api/automation/automation.controller.js
index daee836..41f66a5 100644
--- a/server/api/automation/automation.controller.js
+++ b/server/api/automation/automation.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/automation/automation.model.js b/server/api/automation/automation.model.js
index a02b7ed..1d2fa2f 100644
--- a/server/api/automation/automation.model.js
+++ b/server/api/automation/automation.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/automation/automation.rpc.js b/server/api/automation/automation.rpc.js
index ce3e0a5..1a9ace2 100644
--- a/server/api/automation/automation.rpc.js
+++ b/server/api/automation/automation.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/automation/index.js b/server/api/automation/index.js
index 1b56d2c..3ca2f2c 100644
--- a/server/api/automation/index.js
+++ b/server/api/automation/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/campaign/campaign.attributes.js b/server/api/campaign/campaign.attributes.js
index 42c047e..3742346 100644
--- a/server/api/campaign/campaign.attributes.js
+++ b/server/api/campaign/campaign.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/campaign/campaign.controller.js b/server/api/campaign/campaign.controller.js
index 5dccc55..bbc81db 100644
--- a/server/api/campaign/campaign.controller.js
+++ b/server/api/campaign/campaign.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/campaign/campaign.model.js b/server/api/campaign/campaign.model.js
index e50be69..6b6e19f 100644
--- a/server/api/campaign/campaign.model.js
+++ b/server/api/campaign/campaign.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/campaign/campaign.rpc.js b/server/api/campaign/campaign.rpc.js
index cf029bd..303ba9d 100644
--- a/server/api/campaign/campaign.rpc.js
+++ b/server/api/campaign/campaign.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/campaign/index.js b/server/api/campaign/index.js
index 2e64c19..53a6597 100644
--- a/server/api/campaign/index.js
+++ b/server/api/campaign/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cannedAnswer/cannedAnswer.attributes.js b/server/api/cannedAnswer/cannedAnswer.attributes.js
index 2524ce0..d7d8031 100644
--- a/server/api/cannedAnswer/cannedAnswer.attributes.js
+++ b/server/api/cannedAnswer/cannedAnswer.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cannedAnswer/cannedAnswer.controller.js b/server/api/cannedAnswer/cannedAnswer.controller.js
index f70f42d..e270cbc 100644
--- a/server/api/cannedAnswer/cannedAnswer.controller.js
+++ b/server/api/cannedAnswer/cannedAnswer.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cannedAnswer/cannedAnswer.model.js b/server/api/cannedAnswer/cannedAnswer.model.js
index c6d78d9..d9440ad 100644
--- a/server/api/cannedAnswer/cannedAnswer.model.js
+++ b/server/api/cannedAnswer/cannedAnswer.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cannedAnswer/cannedAnswer.rpc.js b/server/api/cannedAnswer/cannedAnswer.rpc.js
index a347a61..cdf11c7 100644
--- a/server/api/cannedAnswer/cannedAnswer.rpc.js
+++ b/server/api/cannedAnswer/cannedAnswer.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cannedAnswer/index.js b/server/api/cannedAnswer/index.js
index 61087bb..905277d 100644
--- a/server/api/cannedAnswer/index.js
+++ b/server/api/cannedAnswer/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cdr/cdr.attributes.js b/server/api/cdr/cdr.attributes.js
index c6c0d1d..eb3b5d0 100644
--- a/server/api/cdr/cdr.attributes.js
+++ b/server/api/cdr/cdr.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cdr/cdr.controller.js b/server/api/cdr/cdr.controller.js
index 9f2b306..1b5cb23 100644
--- a/server/api/cdr/cdr.controller.js
+++ b/server/api/cdr/cdr.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cdr/cdr.model.js b/server/api/cdr/cdr.model.js
index a321f0d..f40a457 100644
--- a/server/api/cdr/cdr.model.js
+++ b/server/api/cdr/cdr.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cdr/cdr.rpc.js b/server/api/cdr/cdr.rpc.js
index 6d63e27..475dcc5 100644
--- a/server/api/cdr/cdr.rpc.js
+++ b/server/api/cdr/cdr.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cdr/index.js b/server/api/cdr/index.js
index 95597cb..20d7bf7 100644
--- a/server/api/cdr/index.js
+++ b/server/api/cdr/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatApplication/chatApplication.attributes.js b/server/api/chatApplication/chatApplication.attributes.js
index a7d4d9a..6243775 100644
--- a/server/api/chatApplication/chatApplication.attributes.js
+++ b/server/api/chatApplication/chatApplication.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatApplication/chatApplication.controller.js b/server/api/chatApplication/chatApplication.controller.js
index e856e32..0bf12a2 100644
--- a/server/api/chatApplication/chatApplication.controller.js
+++ b/server/api/chatApplication/chatApplication.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatApplication/chatApplication.model.js b/server/api/chatApplication/chatApplication.model.js
index df41b75..1ca8cf5 100644
--- a/server/api/chatApplication/chatApplication.model.js
+++ b/server/api/chatApplication/chatApplication.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatApplication/chatApplication.rpc.js b/server/api/chatApplication/chatApplication.rpc.js
index fb33a49..0aa12bc 100644
--- a/server/api/chatApplication/chatApplication.rpc.js
+++ b/server/api/chatApplication/chatApplication.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatApplication/index.js b/server/api/chatApplication/index.js
index 1e2999b..6064f53 100644
--- a/server/api/chatApplication/index.js
+++ b/server/api/chatApplication/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatGroup/chatGroup.attributes.js b/server/api/chatGroup/chatGroup.attributes.js
index 957e17b..904154e 100644
--- a/server/api/chatGroup/chatGroup.attributes.js
+++ b/server/api/chatGroup/chatGroup.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatGroup/chatGroup.controller.js b/server/api/chatGroup/chatGroup.controller.js
index fc14638..97344f2 100644
--- a/server/api/chatGroup/chatGroup.controller.js
+++ b/server/api/chatGroup/chatGroup.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatGroup/chatGroup.events.js b/server/api/chatGroup/chatGroup.events.js
index ebc7fc7..a6893a3 100644
--- a/server/api/chatGroup/chatGroup.events.js
+++ b/server/api/chatGroup/chatGroup.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatGroup/chatGroup.model.js b/server/api/chatGroup/chatGroup.model.js
index 6c199bf..8cdcc64 100644
--- a/server/api/chatGroup/chatGroup.model.js
+++ b/server/api/chatGroup/chatGroup.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatGroup/chatGroup.rpc.js b/server/api/chatGroup/chatGroup.rpc.js
index 7ac1667..11d69d9 100644
--- a/server/api/chatGroup/chatGroup.rpc.js
+++ b/server/api/chatGroup/chatGroup.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatGroup/chatGroup.socket.js b/server/api/chatGroup/chatGroup.socket.js
index 41ffb73..1e5dfb5 100644
--- a/server/api/chatGroup/chatGroup.socket.js
+++ b/server/api/chatGroup/chatGroup.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatGroup/index.js b/server/api/chatGroup/index.js
index c2b83f5..6831720 100644
--- a/server/api/chatGroup/index.js
+++ b/server/api/chatGroup/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatInteraction/chatInteraction.attributes.js b/server/api/chatInteraction/chatInteraction.attributes.js
index 9df2e14..3f9c86b 100644
--- a/server/api/chatInteraction/chatInteraction.attributes.js
+++ b/server/api/chatInteraction/chatInteraction.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatInteraction/chatInteraction.controller.js b/server/api/chatInteraction/chatInteraction.controller.js
index 4759b77..0e1850f 100644
--- a/server/api/chatInteraction/chatInteraction.controller.js
+++ b/server/api/chatInteraction/chatInteraction.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatInteraction/chatInteraction.events.js b/server/api/chatInteraction/chatInteraction.events.js
index 6ff3846..6ab4290 100644
--- a/server/api/chatInteraction/chatInteraction.events.js
+++ b/server/api/chatInteraction/chatInteraction.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatInteraction/chatInteraction.model.js b/server/api/chatInteraction/chatInteraction.model.js
index 9729131..fb1f051 100644
--- a/server/api/chatInteraction/chatInteraction.model.js
+++ b/server/api/chatInteraction/chatInteraction.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatInteraction/chatInteraction.rpc.js b/server/api/chatInteraction/chatInteraction.rpc.js
index f7971d2..bc2cd13 100644
--- a/server/api/chatInteraction/chatInteraction.rpc.js
+++ b/server/api/chatInteraction/chatInteraction.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatInteraction/chatInteraction.socket.js b/server/api/chatInteraction/chatInteraction.socket.js
index cf6189a..4c2a09e 100644
--- a/server/api/chatInteraction/chatInteraction.socket.js
+++ b/server/api/chatInteraction/chatInteraction.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatInteraction/index.js b/server/api/chatInteraction/index.js
index 9219798..a079fc8 100644
--- a/server/api/chatInteraction/index.js
+++ b/server/api/chatInteraction/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatInternalMessage/chatInternalMessage.attributes.js b/server/api/chatInternalMessage/chatInternalMessage.attributes.js
index 50ffd58..e9ac74b 100644
--- a/server/api/chatInternalMessage/chatInternalMessage.attributes.js
+++ b/server/api/chatInternalMessage/chatInternalMessage.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatInternalMessage/chatInternalMessage.controller.js b/server/api/chatInternalMessage/chatInternalMessage.controller.js
index f74cd16..ac13af9 100644
--- a/server/api/chatInternalMessage/chatInternalMessage.controller.js
+++ b/server/api/chatInternalMessage/chatInternalMessage.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatInternalMessage/chatInternalMessage.events.js b/server/api/chatInternalMessage/chatInternalMessage.events.js
index 4e950b5..41f8a31 100644
--- a/server/api/chatInternalMessage/chatInternalMessage.events.js
+++ b/server/api/chatInternalMessage/chatInternalMessage.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatInternalMessage/chatInternalMessage.model.js b/server/api/chatInternalMessage/chatInternalMessage.model.js
index 1cc30f2..063465f 100644
--- a/server/api/chatInternalMessage/chatInternalMessage.model.js
+++ b/server/api/chatInternalMessage/chatInternalMessage.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatInternalMessage/chatInternalMessage.rpc.js b/server/api/chatInternalMessage/chatInternalMessage.rpc.js
index b6baa6f..0cd2f2d 100644
--- a/server/api/chatInternalMessage/chatInternalMessage.rpc.js
+++ b/server/api/chatInternalMessage/chatInternalMessage.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatInternalMessage/chatInternalMessage.socket.js b/server/api/chatInternalMessage/chatInternalMessage.socket.js
index 1076167..eafc8d4 100644
--- a/server/api/chatInternalMessage/chatInternalMessage.socket.js
+++ b/server/api/chatInternalMessage/chatInternalMessage.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatInternalMessage/index.js b/server/api/chatInternalMessage/index.js
index 19f277a..1793708 100644
--- a/server/api/chatInternalMessage/index.js
+++ b/server/api/chatInternalMessage/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatMessage/chatMessage.attributes.js b/server/api/chatMessage/chatMessage.attributes.js
index f3ed9c7..2a0c391 100644
--- a/server/api/chatMessage/chatMessage.attributes.js
+++ b/server/api/chatMessage/chatMessage.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatMessage/chatMessage.controller.js b/server/api/chatMessage/chatMessage.controller.js
index 3ac94d4..e80605c 100644
--- a/server/api/chatMessage/chatMessage.controller.js
+++ b/server/api/chatMessage/chatMessage.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatMessage/chatMessage.events.js b/server/api/chatMessage/chatMessage.events.js
index a14f079..a8af406 100644
--- a/server/api/chatMessage/chatMessage.events.js
+++ b/server/api/chatMessage/chatMessage.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatMessage/chatMessage.model.js b/server/api/chatMessage/chatMessage.model.js
index ea43254..1f50164 100644
--- a/server/api/chatMessage/chatMessage.model.js
+++ b/server/api/chatMessage/chatMessage.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatMessage/chatMessage.rpc.js b/server/api/chatMessage/chatMessage.rpc.js
index 8cb69aa..cf3217e 100644
--- a/server/api/chatMessage/chatMessage.rpc.js
+++ b/server/api/chatMessage/chatMessage.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatMessage/chatMessage.socket.js b/server/api/chatMessage/chatMessage.socket.js
index 872f5ca..0d34f2c 100644
--- a/server/api/chatMessage/chatMessage.socket.js
+++ b/server/api/chatMessage/chatMessage.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatMessage/index.js b/server/api/chatMessage/index.js
index 3f92580..e28eff4 100644
--- a/server/api/chatMessage/index.js
+++ b/server/api/chatMessage/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatOfflineMessage/chatOfflineMessage.attributes.js b/server/api/chatOfflineMessage/chatOfflineMessage.attributes.js
index 4ac5829..fd9366e 100644
--- a/server/api/chatOfflineMessage/chatOfflineMessage.attributes.js
+++ b/server/api/chatOfflineMessage/chatOfflineMessage.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
-var _0xe3e7=['exports','medium','sequelize'];(function(_0x427085,_0x4e5ad9){var _0x287805=function(_0x4778a0){while(--_0x4778a0){_0x427085['push'](_0x427085['shift']());}};_0x287805(++_0x4e5ad9);}(_0xe3e7,0x6b));var _0x7e3e=function(_0x4aa7cd,_0xcbb732){_0x4aa7cd=_0x4aa7cd-0x0;var _0x14a675=_0xe3e7[_0x4aa7cd];return _0x14a675;};'use strict';var Sequelize=require(_0x7e3e('0x0'));module[_0x7e3e('0x1')]={'body':{'type':Sequelize['TEXT'](_0x7e3e('0x2')),'allowNull':![]}};
\ No newline at end of file
+var _0x8625=['sequelize','exports','TEXT'];(function(_0x5b0df7,_0x1cbd13){var _0x2ceb04=function(_0xa97e4c){while(--_0xa97e4c){_0x5b0df7['push'](_0x5b0df7['shift']());}};_0x2ceb04(++_0x1cbd13);}(_0x8625,0x15c));var _0x5862=function(_0x2aea9e,_0x1f587f){_0x2aea9e=_0x2aea9e-0x0;var _0x430b92=_0x8625[_0x2aea9e];return _0x430b92;};'use strict';var Sequelize=require(_0x5862('0x0'));module[_0x5862('0x1')]={'body':{'type':Sequelize[_0x5862('0x2')]('medium'),'allowNull':![]}};
\ No newline at end of file
diff --git a/server/api/chatOfflineMessage/chatOfflineMessage.controller.js b/server/api/chatOfflineMessage/chatOfflineMessage.controller.js
index 484b1a6..90d8185 100644
--- a/server/api/chatOfflineMessage/chatOfflineMessage.controller.js
+++ b/server/api/chatOfflineMessage/chatOfflineMessage.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatOfflineMessage/chatOfflineMessage.model.js b/server/api/chatOfflineMessage/chatOfflineMessage.model.js
index 305d48b..ed89735 100644
--- a/server/api/chatOfflineMessage/chatOfflineMessage.model.js
+++ b/server/api/chatOfflineMessage/chatOfflineMessage.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatOfflineMessage/chatOfflineMessage.rpc.js b/server/api/chatOfflineMessage/chatOfflineMessage.rpc.js
index 800f80d..b324110 100644
--- a/server/api/chatOfflineMessage/chatOfflineMessage.rpc.js
+++ b/server/api/chatOfflineMessage/chatOfflineMessage.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatOfflineMessage/index.js b/server/api/chatOfflineMessage/index.js
index 35f4e10..8d7ee8c 100644
--- a/server/api/chatOfflineMessage/index.js
+++ b/server/api/chatOfflineMessage/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatProactiveAction/chatProactiveAction.attributes.js b/server/api/chatProactiveAction/chatProactiveAction.attributes.js
index b8b1aab..034f322 100644
--- a/server/api/chatProactiveAction/chatProactiveAction.attributes.js
+++ b/server/api/chatProactiveAction/chatProactiveAction.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatProactiveAction/chatProactiveAction.controller.js b/server/api/chatProactiveAction/chatProactiveAction.controller.js
index 77e8963..8b7ba54 100644
--- a/server/api/chatProactiveAction/chatProactiveAction.controller.js
+++ b/server/api/chatProactiveAction/chatProactiveAction.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatProactiveAction/chatProactiveAction.model.js b/server/api/chatProactiveAction/chatProactiveAction.model.js
index d48c75b..314a4b9 100644
--- a/server/api/chatProactiveAction/chatProactiveAction.model.js
+++ b/server/api/chatProactiveAction/chatProactiveAction.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatProactiveAction/chatProactiveAction.rpc.js b/server/api/chatProactiveAction/chatProactiveAction.rpc.js
index b9a5947..5cb957b 100644
--- a/server/api/chatProactiveAction/chatProactiveAction.rpc.js
+++ b/server/api/chatProactiveAction/chatProactiveAction.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatProactiveAction/index.js b/server/api/chatProactiveAction/index.js
index beb77ca..4d15d19 100644
--- a/server/api/chatProactiveAction/index.js
+++ b/server/api/chatProactiveAction/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatQueue/chatQueue.attributes.js b/server/api/chatQueue/chatQueue.attributes.js
index cd9a907..09a552f 100644
--- a/server/api/chatQueue/chatQueue.attributes.js
+++ b/server/api/chatQueue/chatQueue.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatQueue/chatQueue.controller.js b/server/api/chatQueue/chatQueue.controller.js
index f1f1953..d5aa1c0 100644
--- a/server/api/chatQueue/chatQueue.controller.js
+++ b/server/api/chatQueue/chatQueue.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatQueue/chatQueue.events.js b/server/api/chatQueue/chatQueue.events.js
index fa1de78..4b8ba3e 100644
--- a/server/api/chatQueue/chatQueue.events.js
+++ b/server/api/chatQueue/chatQueue.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatQueue/chatQueue.model.js b/server/api/chatQueue/chatQueue.model.js
index 3bd7738..0136f7a 100644
--- a/server/api/chatQueue/chatQueue.model.js
+++ b/server/api/chatQueue/chatQueue.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatQueue/chatQueue.rpc.js b/server/api/chatQueue/chatQueue.rpc.js
index 6e18515..00daa6c 100644
--- a/server/api/chatQueue/chatQueue.rpc.js
+++ b/server/api/chatQueue/chatQueue.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatQueue/chatQueue.socket.js b/server/api/chatQueue/chatQueue.socket.js
index 6dda1e8..56101ac 100644
--- a/server/api/chatQueue/chatQueue.socket.js
+++ b/server/api/chatQueue/chatQueue.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatQueue/index.js b/server/api/chatQueue/index.js
index 2efae65..14ef9be 100644
--- a/server/api/chatQueue/index.js
+++ b/server/api/chatQueue/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatQueueReport/chatQueueReport.attributes.js b/server/api/chatQueueReport/chatQueueReport.attributes.js
index ee4eb3b..381cc6e 100644
--- a/server/api/chatQueueReport/chatQueueReport.attributes.js
+++ b/server/api/chatQueueReport/chatQueueReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatQueueReport/chatQueueReport.controller.js b/server/api/chatQueueReport/chatQueueReport.controller.js
index f7eed63..9295919 100644
--- a/server/api/chatQueueReport/chatQueueReport.controller.js
+++ b/server/api/chatQueueReport/chatQueueReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatQueueReport/chatQueueReport.model.js b/server/api/chatQueueReport/chatQueueReport.model.js
index 67a8aa9..d68af5d 100644
--- a/server/api/chatQueueReport/chatQueueReport.model.js
+++ b/server/api/chatQueueReport/chatQueueReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatQueueReport/chatQueueReport.rpc.js b/server/api/chatQueueReport/chatQueueReport.rpc.js
index 85298e5..15f17dd 100644
--- a/server/api/chatQueueReport/chatQueueReport.rpc.js
+++ b/server/api/chatQueueReport/chatQueueReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatQueueReport/index.js b/server/api/chatQueueReport/index.js
index 7ca8e70..7aa4646 100644
--- a/server/api/chatQueueReport/index.js
+++ b/server/api/chatQueueReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatTransferReport/chatTransferReport.attributes.js b/server/api/chatTransferReport/chatTransferReport.attributes.js
index aa85735..8a3c3f4 100644
--- a/server/api/chatTransferReport/chatTransferReport.attributes.js
+++ b/server/api/chatTransferReport/chatTransferReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatTransferReport/chatTransferReport.controller.js b/server/api/chatTransferReport/chatTransferReport.controller.js
index b74bcb8..11d3761 100644
--- a/server/api/chatTransferReport/chatTransferReport.controller.js
+++ b/server/api/chatTransferReport/chatTransferReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatTransferReport/chatTransferReport.model.js b/server/api/chatTransferReport/chatTransferReport.model.js
index f02c072..693e7bf 100644
--- a/server/api/chatTransferReport/chatTransferReport.model.js
+++ b/server/api/chatTransferReport/chatTransferReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatTransferReport/chatTransferReport.rpc.js b/server/api/chatTransferReport/chatTransferReport.rpc.js
index 89d8bb6..2aba0f1 100644
--- a/server/api/chatTransferReport/chatTransferReport.rpc.js
+++ b/server/api/chatTransferReport/chatTransferReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatTransferReport/index.js b/server/api/chatTransferReport/index.js
index 25b1824..5fa667f 100644
--- a/server/api/chatTransferReport/index.js
+++ b/server/api/chatTransferReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatWebsite/chatWebsite.attributes.js b/server/api/chatWebsite/chatWebsite.attributes.js
index f269ba9..3d26b98 100644
--- a/server/api/chatWebsite/chatWebsite.attributes.js
+++ b/server/api/chatWebsite/chatWebsite.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatWebsite/chatWebsite.controller.js b/server/api/chatWebsite/chatWebsite.controller.js
index 6759dbd..814ea04 100644
--- a/server/api/chatWebsite/chatWebsite.controller.js
+++ b/server/api/chatWebsite/chatWebsite.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatWebsite/chatWebsite.events.js b/server/api/chatWebsite/chatWebsite.events.js
index f78ff0e..38948c7 100644
--- a/server/api/chatWebsite/chatWebsite.events.js
+++ b/server/api/chatWebsite/chatWebsite.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatWebsite/chatWebsite.model.js b/server/api/chatWebsite/chatWebsite.model.js
index ac0a3fe..715a494 100644
--- a/server/api/chatWebsite/chatWebsite.model.js
+++ b/server/api/chatWebsite/chatWebsite.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatWebsite/chatWebsite.rpc.js b/server/api/chatWebsite/chatWebsite.rpc.js
index 573de94..0cbb860 100644
--- a/server/api/chatWebsite/chatWebsite.rpc.js
+++ b/server/api/chatWebsite/chatWebsite.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatWebsite/chatWebsite.socket.js b/server/api/chatWebsite/chatWebsite.socket.js
index c2bce80..9d9b5b3 100644
--- a/server/api/chatWebsite/chatWebsite.socket.js
+++ b/server/api/chatWebsite/chatWebsite.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/chatWebsite/index.js b/server/api/chatWebsite/index.js
index 70b85ea..671f2f6 100644
--- a/server/api/chatWebsite/index.js
+++ b/server/api/chatWebsite/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cloudProvider/cloudProvider.attributes.js b/server/api/cloudProvider/cloudProvider.attributes.js
index 01eb3d3..1522cd9 100644
--- a/server/api/cloudProvider/cloudProvider.attributes.js
+++ b/server/api/cloudProvider/cloudProvider.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cloudProvider/cloudProvider.controller.js b/server/api/cloudProvider/cloudProvider.controller.js
index a1f0d8d..49c7ba1 100644
--- a/server/api/cloudProvider/cloudProvider.controller.js
+++ b/server/api/cloudProvider/cloudProvider.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cloudProvider/cloudProvider.model.js b/server/api/cloudProvider/cloudProvider.model.js
index b46e95b..baabb1d 100644
--- a/server/api/cloudProvider/cloudProvider.model.js
+++ b/server/api/cloudProvider/cloudProvider.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cloudProvider/cloudProvider.rpc.js b/server/api/cloudProvider/cloudProvider.rpc.js
index 6d64310..4573953 100644
--- a/server/api/cloudProvider/cloudProvider.rpc.js
+++ b/server/api/cloudProvider/cloudProvider.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cloudProvider/index.js b/server/api/cloudProvider/index.js
index 67f53fd..e07542e 100644
--- a/server/api/cloudProvider/index.js
+++ b/server/api/cloudProvider/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmCompany/cmCompany.attributes.js b/server/api/cmCompany/cmCompany.attributes.js
index 521b4fd..9af1ec0 100644
--- a/server/api/cmCompany/cmCompany.attributes.js
+++ b/server/api/cmCompany/cmCompany.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmCompany/cmCompany.controller.js b/server/api/cmCompany/cmCompany.controller.js
index b31efaa..2a35c1d 100644
--- a/server/api/cmCompany/cmCompany.controller.js
+++ b/server/api/cmCompany/cmCompany.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmCompany/cmCompany.model.js b/server/api/cmCompany/cmCompany.model.js
index 4107065..bf2d0ca 100644
--- a/server/api/cmCompany/cmCompany.model.js
+++ b/server/api/cmCompany/cmCompany.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmCompany/cmCompany.rpc.js b/server/api/cmCompany/cmCompany.rpc.js
index a943787..d84638d 100644
--- a/server/api/cmCompany/cmCompany.rpc.js
+++ b/server/api/cmCompany/cmCompany.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmCompany/index.js b/server/api/cmCompany/index.js
index 7fd6b7b..fae0932 100644
--- a/server/api/cmCompany/index.js
+++ b/server/api/cmCompany/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmContact/cmContact.attributes.js b/server/api/cmContact/cmContact.attributes.js
index dac6ea9..02fd5d2 100644
--- a/server/api/cmContact/cmContact.attributes.js
+++ b/server/api/cmContact/cmContact.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmContact/cmContact.controller.js b/server/api/cmContact/cmContact.controller.js
index e1f2b99..c5cedd1 100644
--- a/server/api/cmContact/cmContact.controller.js
+++ b/server/api/cmContact/cmContact.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmContact/cmContact.events.js b/server/api/cmContact/cmContact.events.js
index 78ebf34..d9cabbb 100644
--- a/server/api/cmContact/cmContact.events.js
+++ b/server/api/cmContact/cmContact.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmContact/cmContact.model.js b/server/api/cmContact/cmContact.model.js
index 93084f2..78d2ed1 100644
--- a/server/api/cmContact/cmContact.model.js
+++ b/server/api/cmContact/cmContact.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmContact/cmContact.rpc.js b/server/api/cmContact/cmContact.rpc.js
index 7a3b4f9..452f807 100644
--- a/server/api/cmContact/cmContact.rpc.js
+++ b/server/api/cmContact/cmContact.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmContact/cmContact.socket.js b/server/api/cmContact/cmContact.socket.js
index 18e3c20..c28d648 100644
--- a/server/api/cmContact/cmContact.socket.js
+++ b/server/api/cmContact/cmContact.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmContact/index.js b/server/api/cmContact/index.js
index 2525999..6ec9c15 100644
--- a/server/api/cmContact/index.js
+++ b/server/api/cmContact/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmCustomField/cmCustomField.attributes.js b/server/api/cmCustomField/cmCustomField.attributes.js
index 0ea1de9..2f26d55 100644
--- a/server/api/cmCustomField/cmCustomField.attributes.js
+++ b/server/api/cmCustomField/cmCustomField.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmCustomField/cmCustomField.controller.js b/server/api/cmCustomField/cmCustomField.controller.js
index ab98df1..1869526 100644
--- a/server/api/cmCustomField/cmCustomField.controller.js
+++ b/server/api/cmCustomField/cmCustomField.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmCustomField/cmCustomField.model.js b/server/api/cmCustomField/cmCustomField.model.js
index 866ca8b..44890be 100644
--- a/server/api/cmCustomField/cmCustomField.model.js
+++ b/server/api/cmCustomField/cmCustomField.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmCustomField/cmCustomField.rpc.js b/server/api/cmCustomField/cmCustomField.rpc.js
index 6739232..3950b9d 100644
--- a/server/api/cmCustomField/cmCustomField.rpc.js
+++ b/server/api/cmCustomField/cmCustomField.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmCustomField/index.js b/server/api/cmCustomField/index.js
index c740986..8b92a8c 100644
--- a/server/api/cmCustomField/index.js
+++ b/server/api/cmCustomField/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmHopper/cmHopper.attributes.js b/server/api/cmHopper/cmHopper.attributes.js
index 8bfb12e..d866bb1 100644
--- a/server/api/cmHopper/cmHopper.attributes.js
+++ b/server/api/cmHopper/cmHopper.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmHopper/cmHopper.controller.js b/server/api/cmHopper/cmHopper.controller.js
index d85c2e4..78f3a90 100644
--- a/server/api/cmHopper/cmHopper.controller.js
+++ b/server/api/cmHopper/cmHopper.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmHopper/cmHopper.model.js b/server/api/cmHopper/cmHopper.model.js
index 1873440..4d9cd9b 100644
--- a/server/api/cmHopper/cmHopper.model.js
+++ b/server/api/cmHopper/cmHopper.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmHopper/cmHopper.rpc.js b/server/api/cmHopper/cmHopper.rpc.js
index a921f51..f77e229 100644
--- a/server/api/cmHopper/cmHopper.rpc.js
+++ b/server/api/cmHopper/cmHopper.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmHopper/index.js b/server/api/cmHopper/index.js
index a77bd82..bf2794c 100644
--- a/server/api/cmHopper/index.js
+++ b/server/api/cmHopper/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmHopperBlack/cmHopperBlack.attributes.js b/server/api/cmHopperBlack/cmHopperBlack.attributes.js
index 115a3c5..e267520 100644
--- a/server/api/cmHopperBlack/cmHopperBlack.attributes.js
+++ b/server/api/cmHopperBlack/cmHopperBlack.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmHopperBlack/cmHopperBlack.controller.js b/server/api/cmHopperBlack/cmHopperBlack.controller.js
index 72ae388..8294fb4 100644
--- a/server/api/cmHopperBlack/cmHopperBlack.controller.js
+++ b/server/api/cmHopperBlack/cmHopperBlack.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmHopperBlack/cmHopperBlack.model.js b/server/api/cmHopperBlack/cmHopperBlack.model.js
index 365794d..c718807 100644
--- a/server/api/cmHopperBlack/cmHopperBlack.model.js
+++ b/server/api/cmHopperBlack/cmHopperBlack.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmHopperBlack/cmHopperBlack.rpc.js b/server/api/cmHopperBlack/cmHopperBlack.rpc.js
index eb70282..a5b8686 100644
--- a/server/api/cmHopperBlack/cmHopperBlack.rpc.js
+++ b/server/api/cmHopperBlack/cmHopperBlack.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmHopperBlack/index.js b/server/api/cmHopperBlack/index.js
index dbf4dc2..0a759d7 100644
--- a/server/api/cmHopperBlack/index.js
+++ b/server/api/cmHopperBlack/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmHopperFinal/cmHopperFinal.attributes.js b/server/api/cmHopperFinal/cmHopperFinal.attributes.js
index ee576dc..098c6ae 100644
--- a/server/api/cmHopperFinal/cmHopperFinal.attributes.js
+++ b/server/api/cmHopperFinal/cmHopperFinal.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmHopperFinal/cmHopperFinal.controller.js b/server/api/cmHopperFinal/cmHopperFinal.controller.js
index 6cc316e..7b4b99f 100644
--- a/server/api/cmHopperFinal/cmHopperFinal.controller.js
+++ b/server/api/cmHopperFinal/cmHopperFinal.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmHopperFinal/cmHopperFinal.model.js b/server/api/cmHopperFinal/cmHopperFinal.model.js
index d902b81..4bd119b 100644
--- a/server/api/cmHopperFinal/cmHopperFinal.model.js
+++ b/server/api/cmHopperFinal/cmHopperFinal.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmHopperFinal/cmHopperFinal.rpc.js b/server/api/cmHopperFinal/cmHopperFinal.rpc.js
index 63c77f5..a8f9dcb 100644
--- a/server/api/cmHopperFinal/cmHopperFinal.rpc.js
+++ b/server/api/cmHopperFinal/cmHopperFinal.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmHopperFinal/index.js b/server/api/cmHopperFinal/index.js
index 7866e5e..748e5da 100644
--- a/server/api/cmHopperFinal/index.js
+++ b/server/api/cmHopperFinal/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmHopperHistory/cmHopperHistory.attributes.js b/server/api/cmHopperHistory/cmHopperHistory.attributes.js
index dbd8eb3..622ce7c 100644
--- a/server/api/cmHopperHistory/cmHopperHistory.attributes.js
+++ b/server/api/cmHopperHistory/cmHopperHistory.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmHopperHistory/cmHopperHistory.controller.js b/server/api/cmHopperHistory/cmHopperHistory.controller.js
index 3c9a8e7..a8e1680 100644
--- a/server/api/cmHopperHistory/cmHopperHistory.controller.js
+++ b/server/api/cmHopperHistory/cmHopperHistory.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmHopperHistory/cmHopperHistory.model.js b/server/api/cmHopperHistory/cmHopperHistory.model.js
index c339508..71690f5 100644
--- a/server/api/cmHopperHistory/cmHopperHistory.model.js
+++ b/server/api/cmHopperHistory/cmHopperHistory.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmHopperHistory/cmHopperHistory.rpc.js b/server/api/cmHopperHistory/cmHopperHistory.rpc.js
index 3d4482e..3dd3dbb 100644
--- a/server/api/cmHopperHistory/cmHopperHistory.rpc.js
+++ b/server/api/cmHopperHistory/cmHopperHistory.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmHopperHistory/index.js b/server/api/cmHopperHistory/index.js
index cac0568..a483389 100644
--- a/server/api/cmHopperHistory/index.js
+++ b/server/api/cmHopperHistory/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmList/cmList.attributes.js b/server/api/cmList/cmList.attributes.js
index bf478e2..b30e5b7 100644
--- a/server/api/cmList/cmList.attributes.js
+++ b/server/api/cmList/cmList.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmList/cmList.controller.js b/server/api/cmList/cmList.controller.js
index 86a82b1..5ed9105 100644
--- a/server/api/cmList/cmList.controller.js
+++ b/server/api/cmList/cmList.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmList/cmList.events.js b/server/api/cmList/cmList.events.js
index 5a83c8d..e595b01 100644
--- a/server/api/cmList/cmList.events.js
+++ b/server/api/cmList/cmList.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmList/cmList.model.js b/server/api/cmList/cmList.model.js
index 5a6962a..71dfe4c 100644
--- a/server/api/cmList/cmList.model.js
+++ b/server/api/cmList/cmList.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmList/cmList.rpc.js b/server/api/cmList/cmList.rpc.js
index 48cfa83..64f8e34 100644
--- a/server/api/cmList/cmList.rpc.js
+++ b/server/api/cmList/cmList.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmList/cmList.socket.js b/server/api/cmList/cmList.socket.js
index 0b938cd..48ad084 100644
--- a/server/api/cmList/cmList.socket.js
+++ b/server/api/cmList/cmList.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/cmList/index.js b/server/api/cmList/index.js
index 746c6aa..e40381e 100644
--- a/server/api/cmList/index.js
+++ b/server/api/cmList/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/condition/condition.attributes.js b/server/api/condition/condition.attributes.js
index bcff79e..fe397ac 100644
--- a/server/api/condition/condition.attributes.js
+++ b/server/api/condition/condition.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/condition/condition.controller.js b/server/api/condition/condition.controller.js
index 6958c72..3ef8cf7 100644
--- a/server/api/condition/condition.controller.js
+++ b/server/api/condition/condition.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/condition/condition.model.js b/server/api/condition/condition.model.js
index 5b4b7c5..47ebd2d 100644
--- a/server/api/condition/condition.model.js
+++ b/server/api/condition/condition.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/condition/condition.rpc.js b/server/api/condition/condition.rpc.js
index bac6f21..c0747c5 100644
--- a/server/api/condition/condition.rpc.js
+++ b/server/api/condition/condition.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/condition/index.js b/server/api/condition/index.js
index adc404e..b2902ec 100644
--- a/server/api/condition/index.js
+++ b/server/api/condition/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/dashboard/dashboard.attributes.js b/server/api/dashboard/dashboard.attributes.js
index 8ec561d..7252b0c 100644
--- a/server/api/dashboard/dashboard.attributes.js
+++ b/server/api/dashboard/dashboard.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/dashboard/dashboard.controller.js b/server/api/dashboard/dashboard.controller.js
index 2d804a2..82ad72f 100644
--- a/server/api/dashboard/dashboard.controller.js
+++ b/server/api/dashboard/dashboard.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/dashboard/dashboard.events.js b/server/api/dashboard/dashboard.events.js
index 511f204..c1c511f 100644
--- a/server/api/dashboard/dashboard.events.js
+++ b/server/api/dashboard/dashboard.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/dashboard/dashboard.model.js b/server/api/dashboard/dashboard.model.js
index 28e1493..3737bbe 100644
--- a/server/api/dashboard/dashboard.model.js
+++ b/server/api/dashboard/dashboard.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/dashboard/dashboard.rpc.js b/server/api/dashboard/dashboard.rpc.js
index 512d730..e2f7169 100644
--- a/server/api/dashboard/dashboard.rpc.js
+++ b/server/api/dashboard/dashboard.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/dashboard/dashboard.socket.js b/server/api/dashboard/dashboard.socket.js
index 512563f..7c0dad3 100644
--- a/server/api/dashboard/dashboard.socket.js
+++ b/server/api/dashboard/dashboard.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/dashboard/index.js b/server/api/dashboard/index.js
index 0b182fc..24092f7 100644
--- a/server/api/dashboard/index.js
+++ b/server/api/dashboard/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/dashboardItem/dashboardItem.attributes.js b/server/api/dashboardItem/dashboardItem.attributes.js
index f392ff6..fd4a9cb 100644
--- a/server/api/dashboardItem/dashboardItem.attributes.js
+++ b/server/api/dashboardItem/dashboardItem.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/dashboardItem/dashboardItem.controller.js b/server/api/dashboardItem/dashboardItem.controller.js
index 0aaa551..7effee9 100644
--- a/server/api/dashboardItem/dashboardItem.controller.js
+++ b/server/api/dashboardItem/dashboardItem.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/dashboardItem/dashboardItem.events.js b/server/api/dashboardItem/dashboardItem.events.js
index 0e9723b..75b00c9 100644
--- a/server/api/dashboardItem/dashboardItem.events.js
+++ b/server/api/dashboardItem/dashboardItem.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/dashboardItem/dashboardItem.model.js b/server/api/dashboardItem/dashboardItem.model.js
index 7ccf258..680be0c 100644
--- a/server/api/dashboardItem/dashboardItem.model.js
+++ b/server/api/dashboardItem/dashboardItem.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/dashboardItem/dashboardItem.rpc.js b/server/api/dashboardItem/dashboardItem.rpc.js
index 945726f..5df92c0 100644
--- a/server/api/dashboardItem/dashboardItem.rpc.js
+++ b/server/api/dashboardItem/dashboardItem.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/dashboardItem/dashboardItem.socket.js b/server/api/dashboardItem/dashboardItem.socket.js
index 08a0211..570274e 100644
--- a/server/api/dashboardItem/dashboardItem.socket.js
+++ b/server/api/dashboardItem/dashboardItem.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/dashboardItem/index.js b/server/api/dashboardItem/index.js
index f251add..ed91702 100644
--- a/server/api/dashboardItem/index.js
+++ b/server/api/dashboardItem/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/disposition/disposition.attributes.js b/server/api/disposition/disposition.attributes.js
index 680bca4..c29f042 100644
--- a/server/api/disposition/disposition.attributes.js
+++ b/server/api/disposition/disposition.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
-var _0x8af4=['sequelize','STRING'];(function(_0x37b94a,_0x1ea351){var _0x414761=function(_0x5dd467){while(--_0x5dd467){_0x37b94a['push'](_0x37b94a['shift']());}};_0x414761(++_0x1ea351);}(_0x8af4,0x17a));var _0x48af=function(_0x4af0a7,_0x49afdd){_0x4af0a7=_0x4af0a7-0x0;var _0x2d7cc9=_0x8af4[_0x4af0a7];return _0x2d7cc9;};'use strict';var Sequelize=require(_0x48af('0x0'));module['exports']={'name':{'type':Sequelize[_0x48af('0x1')],'allowNull':![]}};
\ No newline at end of file
+var _0x0f24=['STRING','sequelize'];(function(_0x4ef05e,_0x18b00a){var _0x241f30=function(_0x5440db){while(--_0x5440db){_0x4ef05e['push'](_0x4ef05e['shift']());}};_0x241f30(++_0x18b00a);}(_0x0f24,0x113));var _0x40f2=function(_0x14add3,_0x13ce8d){_0x14add3=_0x14add3-0x0;var _0x4a174f=_0x0f24[_0x14add3];return _0x4a174f;};'use strict';var Sequelize=require(_0x40f2('0x0'));module['exports']={'name':{'type':Sequelize[_0x40f2('0x1')],'allowNull':![]}};
\ No newline at end of file
diff --git a/server/api/disposition/disposition.controller.js b/server/api/disposition/disposition.controller.js
index 4fbfc38..e771a6e 100644
--- a/server/api/disposition/disposition.controller.js
+++ b/server/api/disposition/disposition.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/disposition/disposition.model.js b/server/api/disposition/disposition.model.js
index 2df0612..ed4d2b7 100644
--- a/server/api/disposition/disposition.model.js
+++ b/server/api/disposition/disposition.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/disposition/disposition.rpc.js b/server/api/disposition/disposition.rpc.js
index 3a06c96..0d6665c 100644
--- a/server/api/disposition/disposition.rpc.js
+++ b/server/api/disposition/disposition.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/disposition/index.js b/server/api/disposition/index.js
index 684a8ba..2afe00d 100644
--- a/server/api/disposition/index.js
+++ b/server/api/disposition/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxAccount/faxAccount.attributes.js b/server/api/faxAccount/faxAccount.attributes.js
index 19f2e7a..28261c2 100644
--- a/server/api/faxAccount/faxAccount.attributes.js
+++ b/server/api/faxAccount/faxAccount.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxAccount/faxAccount.controller.js b/server/api/faxAccount/faxAccount.controller.js
index b654487..ed6f5aa 100644
--- a/server/api/faxAccount/faxAccount.controller.js
+++ b/server/api/faxAccount/faxAccount.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxAccount/faxAccount.events.js b/server/api/faxAccount/faxAccount.events.js
index 11b05f4..f319f9d 100644
--- a/server/api/faxAccount/faxAccount.events.js
+++ b/server/api/faxAccount/faxAccount.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxAccount/faxAccount.model.js b/server/api/faxAccount/faxAccount.model.js
index e712c16..e347dd6 100644
--- a/server/api/faxAccount/faxAccount.model.js
+++ b/server/api/faxAccount/faxAccount.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxAccount/faxAccount.rpc.js b/server/api/faxAccount/faxAccount.rpc.js
index cc64024..bc9f024 100644
--- a/server/api/faxAccount/faxAccount.rpc.js
+++ b/server/api/faxAccount/faxAccount.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxAccount/faxAccount.socket.js b/server/api/faxAccount/faxAccount.socket.js
index 467efa6..db892ad 100644
--- a/server/api/faxAccount/faxAccount.socket.js
+++ b/server/api/faxAccount/faxAccount.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxAccount/index.js b/server/api/faxAccount/index.js
index 7c76b99..355e464 100644
--- a/server/api/faxAccount/index.js
+++ b/server/api/faxAccount/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxApplication/faxApplication.attributes.js b/server/api/faxApplication/faxApplication.attributes.js
index 00cf15c..a0b1b53 100644
--- a/server/api/faxApplication/faxApplication.attributes.js
+++ b/server/api/faxApplication/faxApplication.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxApplication/faxApplication.controller.js b/server/api/faxApplication/faxApplication.controller.js
index bb65902..dcf46c2 100644
--- a/server/api/faxApplication/faxApplication.controller.js
+++ b/server/api/faxApplication/faxApplication.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxApplication/faxApplication.model.js b/server/api/faxApplication/faxApplication.model.js
index ae84a18..1d5221f 100644
--- a/server/api/faxApplication/faxApplication.model.js
+++ b/server/api/faxApplication/faxApplication.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxApplication/faxApplication.rpc.js b/server/api/faxApplication/faxApplication.rpc.js
index dfae578..47fc2d0 100644
--- a/server/api/faxApplication/faxApplication.rpc.js
+++ b/server/api/faxApplication/faxApplication.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxApplication/index.js b/server/api/faxApplication/index.js
index 8e9fd8d..d6f37a9 100644
--- a/server/api/faxApplication/index.js
+++ b/server/api/faxApplication/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxInteraction/faxInteraction.attributes.js b/server/api/faxInteraction/faxInteraction.attributes.js
index f0a724b..f5b8db9 100644
--- a/server/api/faxInteraction/faxInteraction.attributes.js
+++ b/server/api/faxInteraction/faxInteraction.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxInteraction/faxInteraction.controller.js b/server/api/faxInteraction/faxInteraction.controller.js
index 4370eb6..6f3d18b 100644
--- a/server/api/faxInteraction/faxInteraction.controller.js
+++ b/server/api/faxInteraction/faxInteraction.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxInteraction/faxInteraction.events.js b/server/api/faxInteraction/faxInteraction.events.js
index d9e30e9..73d379a 100644
--- a/server/api/faxInteraction/faxInteraction.events.js
+++ b/server/api/faxInteraction/faxInteraction.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxInteraction/faxInteraction.model.js b/server/api/faxInteraction/faxInteraction.model.js
index 2f80952..e45c3e6 100644
--- a/server/api/faxInteraction/faxInteraction.model.js
+++ b/server/api/faxInteraction/faxInteraction.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxInteraction/faxInteraction.rpc.js b/server/api/faxInteraction/faxInteraction.rpc.js
index 62500cc..c039475 100644
--- a/server/api/faxInteraction/faxInteraction.rpc.js
+++ b/server/api/faxInteraction/faxInteraction.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxInteraction/faxInteraction.socket.js b/server/api/faxInteraction/faxInteraction.socket.js
index 14187f3..f43f846 100644
--- a/server/api/faxInteraction/faxInteraction.socket.js
+++ b/server/api/faxInteraction/faxInteraction.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxInteraction/index.js b/server/api/faxInteraction/index.js
index 5331660..22e78fc 100644
--- a/server/api/faxInteraction/index.js
+++ b/server/api/faxInteraction/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxMessage/faxMessage.attributes.js b/server/api/faxMessage/faxMessage.attributes.js
index eef752f..8263a30 100644
--- a/server/api/faxMessage/faxMessage.attributes.js
+++ b/server/api/faxMessage/faxMessage.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxMessage/faxMessage.controller.js b/server/api/faxMessage/faxMessage.controller.js
index b65fae6..9134348 100644
--- a/server/api/faxMessage/faxMessage.controller.js
+++ b/server/api/faxMessage/faxMessage.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxMessage/faxMessage.events.js b/server/api/faxMessage/faxMessage.events.js
index 18b4a62..83dbc8c 100644
--- a/server/api/faxMessage/faxMessage.events.js
+++ b/server/api/faxMessage/faxMessage.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxMessage/faxMessage.model.js b/server/api/faxMessage/faxMessage.model.js
index 4eb62f7..3c8ce9f 100644
--- a/server/api/faxMessage/faxMessage.model.js
+++ b/server/api/faxMessage/faxMessage.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxMessage/faxMessage.rpc.js b/server/api/faxMessage/faxMessage.rpc.js
index 1036184..d33f5e0 100644
--- a/server/api/faxMessage/faxMessage.rpc.js
+++ b/server/api/faxMessage/faxMessage.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxMessage/faxMessage.socket.js b/server/api/faxMessage/faxMessage.socket.js
index 221d15f..168431a 100644
--- a/server/api/faxMessage/faxMessage.socket.js
+++ b/server/api/faxMessage/faxMessage.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxMessage/index.js b/server/api/faxMessage/index.js
index 4cf1468..fb18973 100644
--- a/server/api/faxMessage/index.js
+++ b/server/api/faxMessage/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxQueue/faxQueue.attributes.js b/server/api/faxQueue/faxQueue.attributes.js
index 8269fe2..a360550 100644
--- a/server/api/faxQueue/faxQueue.attributes.js
+++ b/server/api/faxQueue/faxQueue.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxQueue/faxQueue.controller.js b/server/api/faxQueue/faxQueue.controller.js
index 0ed2d0f..844c406 100644
--- a/server/api/faxQueue/faxQueue.controller.js
+++ b/server/api/faxQueue/faxQueue.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxQueue/faxQueue.events.js b/server/api/faxQueue/faxQueue.events.js
index 3973ca3..c4a8527 100644
--- a/server/api/faxQueue/faxQueue.events.js
+++ b/server/api/faxQueue/faxQueue.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxQueue/faxQueue.model.js b/server/api/faxQueue/faxQueue.model.js
index 9e66f06..19cd936 100644
--- a/server/api/faxQueue/faxQueue.model.js
+++ b/server/api/faxQueue/faxQueue.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxQueue/faxQueue.rpc.js b/server/api/faxQueue/faxQueue.rpc.js
index cb3b60b..70d3b9e 100644
--- a/server/api/faxQueue/faxQueue.rpc.js
+++ b/server/api/faxQueue/faxQueue.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxQueue/faxQueue.socket.js b/server/api/faxQueue/faxQueue.socket.js
index e286fb0..dd086c1 100644
--- a/server/api/faxQueue/faxQueue.socket.js
+++ b/server/api/faxQueue/faxQueue.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxQueue/index.js b/server/api/faxQueue/index.js
index 682bffe..e136821 100644
--- a/server/api/faxQueue/index.js
+++ b/server/api/faxQueue/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxQueueReport/faxQueueReport.attributes.js b/server/api/faxQueueReport/faxQueueReport.attributes.js
index 4ac417f..a2fdfa8 100644
--- a/server/api/faxQueueReport/faxQueueReport.attributes.js
+++ b/server/api/faxQueueReport/faxQueueReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxQueueReport/faxQueueReport.controller.js b/server/api/faxQueueReport/faxQueueReport.controller.js
index d7687a2..6b66005 100644
--- a/server/api/faxQueueReport/faxQueueReport.controller.js
+++ b/server/api/faxQueueReport/faxQueueReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxQueueReport/faxQueueReport.model.js b/server/api/faxQueueReport/faxQueueReport.model.js
index 1709afd..975e24b 100644
--- a/server/api/faxQueueReport/faxQueueReport.model.js
+++ b/server/api/faxQueueReport/faxQueueReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxQueueReport/faxQueueReport.rpc.js b/server/api/faxQueueReport/faxQueueReport.rpc.js
index 8b823eb..cfdfe8b 100644
--- a/server/api/faxQueueReport/faxQueueReport.rpc.js
+++ b/server/api/faxQueueReport/faxQueueReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxQueueReport/index.js b/server/api/faxQueueReport/index.js
index 5fd59a0..5d54cdb 100644
--- a/server/api/faxQueueReport/index.js
+++ b/server/api/faxQueueReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxTransferReport/faxTransferReport.attributes.js b/server/api/faxTransferReport/faxTransferReport.attributes.js
index a1b0ddb..16f3939 100644
--- a/server/api/faxTransferReport/faxTransferReport.attributes.js
+++ b/server/api/faxTransferReport/faxTransferReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxTransferReport/faxTransferReport.controller.js b/server/api/faxTransferReport/faxTransferReport.controller.js
index 005ba57..1240c23 100644
--- a/server/api/faxTransferReport/faxTransferReport.controller.js
+++ b/server/api/faxTransferReport/faxTransferReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxTransferReport/faxTransferReport.model.js b/server/api/faxTransferReport/faxTransferReport.model.js
index 1db90af..40f45d1 100644
--- a/server/api/faxTransferReport/faxTransferReport.model.js
+++ b/server/api/faxTransferReport/faxTransferReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxTransferReport/faxTransferReport.rpc.js b/server/api/faxTransferReport/faxTransferReport.rpc.js
index 269bbf3..a17300a 100644
--- a/server/api/faxTransferReport/faxTransferReport.rpc.js
+++ b/server/api/faxTransferReport/faxTransferReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/faxTransferReport/index.js b/server/api/faxTransferReport/index.js
index 53bcd69..99a4f41 100644
--- a/server/api/faxTransferReport/index.js
+++ b/server/api/faxTransferReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDeskAccount/index.js b/server/api/intDeskAccount/index.js
index ded7c15..ded1f98 100644
--- a/server/api/intDeskAccount/index.js
+++ b/server/api/intDeskAccount/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDeskAccount/intDeskAccount.attributes.js b/server/api/intDeskAccount/intDeskAccount.attributes.js
index 1c95858..89d4fec 100644
--- a/server/api/intDeskAccount/intDeskAccount.attributes.js
+++ b/server/api/intDeskAccount/intDeskAccount.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDeskAccount/intDeskAccount.controller.js b/server/api/intDeskAccount/intDeskAccount.controller.js
index a2c83f3..6cd9c73 100644
--- a/server/api/intDeskAccount/intDeskAccount.controller.js
+++ b/server/api/intDeskAccount/intDeskAccount.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDeskAccount/intDeskAccount.model.js b/server/api/intDeskAccount/intDeskAccount.model.js
index 825999b..5019729 100644
--- a/server/api/intDeskAccount/intDeskAccount.model.js
+++ b/server/api/intDeskAccount/intDeskAccount.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDeskAccount/intDeskAccount.rpc.js b/server/api/intDeskAccount/intDeskAccount.rpc.js
index 874b197..adfa7d3 100644
--- a/server/api/intDeskAccount/intDeskAccount.rpc.js
+++ b/server/api/intDeskAccount/intDeskAccount.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDeskConfiguration/index.js b/server/api/intDeskConfiguration/index.js
index 0125203..95ca944 100644
--- a/server/api/intDeskConfiguration/index.js
+++ b/server/api/intDeskConfiguration/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDeskConfiguration/intDeskConfiguration.attributes.js b/server/api/intDeskConfiguration/intDeskConfiguration.attributes.js
index 37e2c91..fc093c4 100644
--- a/server/api/intDeskConfiguration/intDeskConfiguration.attributes.js
+++ b/server/api/intDeskConfiguration/intDeskConfiguration.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
-var _0xd4b0=['STRING','sequelize','exports'];(function(_0x1b6186,_0x1ec7f2){var _0x186121=function(_0x1748a8){while(--_0x1748a8){_0x1b6186['push'](_0x1b6186['shift']());}};_0x186121(++_0x1ec7f2);}(_0xd4b0,0x17e));var _0x0d4b=function(_0x4da18a,_0x419edc){_0x4da18a=_0x4da18a-0x0;var _0x4bacae=_0xd4b0[_0x4da18a];return _0x4bacae;};'use strict';var Sequelize=require(_0x0d4b('0x0'));module[_0x0d4b('0x1')]={'name':{'type':Sequelize['STRING']},'description':{'type':Sequelize[_0x0d4b('0x2')]}};
\ No newline at end of file
+var _0x6c85=['sequelize','exports','STRING'];(function(_0x3da37c,_0x3b2466){var _0x2c2972=function(_0x41f863){while(--_0x41f863){_0x3da37c['push'](_0x3da37c['shift']());}};_0x2c2972(++_0x3b2466);}(_0x6c85,0x8a));var _0x56c8=function(_0x44fca2,_0x86201){_0x44fca2=_0x44fca2-0x0;var _0x5ce526=_0x6c85[_0x44fca2];return _0x5ce526;};'use strict';var Sequelize=require(_0x56c8('0x0'));module[_0x56c8('0x1')]={'name':{'type':Sequelize[_0x56c8('0x2')]},'description':{'type':Sequelize['STRING']}};
\ No newline at end of file
diff --git a/server/api/intDeskConfiguration/intDeskConfiguration.controller.js b/server/api/intDeskConfiguration/intDeskConfiguration.controller.js
index 9177248..8501a14 100644
--- a/server/api/intDeskConfiguration/intDeskConfiguration.controller.js
+++ b/server/api/intDeskConfiguration/intDeskConfiguration.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDeskConfiguration/intDeskConfiguration.model.js b/server/api/intDeskConfiguration/intDeskConfiguration.model.js
index 1ab4993..addee3f 100644
--- a/server/api/intDeskConfiguration/intDeskConfiguration.model.js
+++ b/server/api/intDeskConfiguration/intDeskConfiguration.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDeskConfiguration/intDeskConfiguration.rpc.js b/server/api/intDeskConfiguration/intDeskConfiguration.rpc.js
index 27945c2..c4515cf 100644
--- a/server/api/intDeskConfiguration/intDeskConfiguration.rpc.js
+++ b/server/api/intDeskConfiguration/intDeskConfiguration.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDeskField/index.js b/server/api/intDeskField/index.js
index 497c4a4..f997852 100644
--- a/server/api/intDeskField/index.js
+++ b/server/api/intDeskField/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDeskField/intDeskField.attributes.js b/server/api/intDeskField/intDeskField.attributes.js
index e58af07..26d6ecb 100644
--- a/server/api/intDeskField/intDeskField.attributes.js
+++ b/server/api/intDeskField/intDeskField.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDeskField/intDeskField.controller.js b/server/api/intDeskField/intDeskField.controller.js
index cc4362a..ae5dcf1 100644
--- a/server/api/intDeskField/intDeskField.controller.js
+++ b/server/api/intDeskField/intDeskField.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDeskField/intDeskField.model.js b/server/api/intDeskField/intDeskField.model.js
index 3a4493a..5171639 100644
--- a/server/api/intDeskField/intDeskField.model.js
+++ b/server/api/intDeskField/intDeskField.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDeskField/intDeskField.rpc.js b/server/api/intDeskField/intDeskField.rpc.js
index 3e99d5c..831bd0a 100644
--- a/server/api/intDeskField/intDeskField.rpc.js
+++ b/server/api/intDeskField/intDeskField.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDynamics365Account/index.js b/server/api/intDynamics365Account/index.js
index 8d6448a..8f10926 100644
--- a/server/api/intDynamics365Account/index.js
+++ b/server/api/intDynamics365Account/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDynamics365Account/intDynamics365Account.attributes.js b/server/api/intDynamics365Account/intDynamics365Account.attributes.js
index b56f279..458de99 100644
--- a/server/api/intDynamics365Account/intDynamics365Account.attributes.js
+++ b/server/api/intDynamics365Account/intDynamics365Account.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDynamics365Account/intDynamics365Account.controller.js b/server/api/intDynamics365Account/intDynamics365Account.controller.js
index 52d4099..f24f497 100644
--- a/server/api/intDynamics365Account/intDynamics365Account.controller.js
+++ b/server/api/intDynamics365Account/intDynamics365Account.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDynamics365Account/intDynamics365Account.model.js b/server/api/intDynamics365Account/intDynamics365Account.model.js
index 29c3996..5b8b909 100644
--- a/server/api/intDynamics365Account/intDynamics365Account.model.js
+++ b/server/api/intDynamics365Account/intDynamics365Account.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDynamics365Account/intDynamics365Account.rpc.js b/server/api/intDynamics365Account/intDynamics365Account.rpc.js
index b17654f..205093e 100644
--- a/server/api/intDynamics365Account/intDynamics365Account.rpc.js
+++ b/server/api/intDynamics365Account/intDynamics365Account.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDynamics365Configuration/index.js b/server/api/intDynamics365Configuration/index.js
index ba564cf..d93a988 100644
--- a/server/api/intDynamics365Configuration/index.js
+++ b/server/api/intDynamics365Configuration/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDynamics365Configuration/intDynamics365Configuration.attributes.js b/server/api/intDynamics365Configuration/intDynamics365Configuration.attributes.js
index ab91ec6..d09e793 100644
--- a/server/api/intDynamics365Configuration/intDynamics365Configuration.attributes.js
+++ b/server/api/intDynamics365Configuration/intDynamics365Configuration.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDynamics365Configuration/intDynamics365Configuration.controller.js b/server/api/intDynamics365Configuration/intDynamics365Configuration.controller.js
index cd43f40..d7c57f9 100644
--- a/server/api/intDynamics365Configuration/intDynamics365Configuration.controller.js
+++ b/server/api/intDynamics365Configuration/intDynamics365Configuration.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDynamics365Configuration/intDynamics365Configuration.model.js b/server/api/intDynamics365Configuration/intDynamics365Configuration.model.js
index 8f02cb6..1f6d98e 100644
--- a/server/api/intDynamics365Configuration/intDynamics365Configuration.model.js
+++ b/server/api/intDynamics365Configuration/intDynamics365Configuration.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDynamics365Configuration/intDynamics365Configuration.rpc.js b/server/api/intDynamics365Configuration/intDynamics365Configuration.rpc.js
index 9031a93..79c6082 100644
--- a/server/api/intDynamics365Configuration/intDynamics365Configuration.rpc.js
+++ b/server/api/intDynamics365Configuration/intDynamics365Configuration.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDynamics365Field/index.js b/server/api/intDynamics365Field/index.js
index 28fc43f..922e2fa 100644
--- a/server/api/intDynamics365Field/index.js
+++ b/server/api/intDynamics365Field/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDynamics365Field/intDynamics365Field.attributes.js b/server/api/intDynamics365Field/intDynamics365Field.attributes.js
index fe47832..0ae1528 100644
--- a/server/api/intDynamics365Field/intDynamics365Field.attributes.js
+++ b/server/api/intDynamics365Field/intDynamics365Field.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDynamics365Field/intDynamics365Field.controller.js b/server/api/intDynamics365Field/intDynamics365Field.controller.js
index 56e4deb..4b117eb 100644
--- a/server/api/intDynamics365Field/intDynamics365Field.controller.js
+++ b/server/api/intDynamics365Field/intDynamics365Field.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDynamics365Field/intDynamics365Field.model.js b/server/api/intDynamics365Field/intDynamics365Field.model.js
index f3abf53..7760d50 100644
--- a/server/api/intDynamics365Field/intDynamics365Field.model.js
+++ b/server/api/intDynamics365Field/intDynamics365Field.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intDynamics365Field/intDynamics365Field.rpc.js b/server/api/intDynamics365Field/intDynamics365Field.rpc.js
index 5a513bc..3c4b12f 100644
--- a/server/api/intDynamics365Field/intDynamics365Field.rpc.js
+++ b/server/api/intDynamics365Field/intDynamics365Field.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshdeskAccount/index.js b/server/api/intFreshdeskAccount/index.js
index 7fb1382..2a2b969 100644
--- a/server/api/intFreshdeskAccount/index.js
+++ b/server/api/intFreshdeskAccount/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshdeskAccount/intFreshdeskAccount.attributes.js b/server/api/intFreshdeskAccount/intFreshdeskAccount.attributes.js
index eaa8dfe..b2b01a0 100644
--- a/server/api/intFreshdeskAccount/intFreshdeskAccount.attributes.js
+++ b/server/api/intFreshdeskAccount/intFreshdeskAccount.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshdeskAccount/intFreshdeskAccount.controller.js b/server/api/intFreshdeskAccount/intFreshdeskAccount.controller.js
index 04c8c66..1a0e262 100644
--- a/server/api/intFreshdeskAccount/intFreshdeskAccount.controller.js
+++ b/server/api/intFreshdeskAccount/intFreshdeskAccount.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshdeskAccount/intFreshdeskAccount.model.js b/server/api/intFreshdeskAccount/intFreshdeskAccount.model.js
index 98c5b2e..31c2d81 100644
--- a/server/api/intFreshdeskAccount/intFreshdeskAccount.model.js
+++ b/server/api/intFreshdeskAccount/intFreshdeskAccount.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshdeskAccount/intFreshdeskAccount.rpc.js b/server/api/intFreshdeskAccount/intFreshdeskAccount.rpc.js
index e68ad88..7fe25ef 100644
--- a/server/api/intFreshdeskAccount/intFreshdeskAccount.rpc.js
+++ b/server/api/intFreshdeskAccount/intFreshdeskAccount.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshdeskConfiguration/index.js b/server/api/intFreshdeskConfiguration/index.js
index 39837eb..176638d 100644
--- a/server/api/intFreshdeskConfiguration/index.js
+++ b/server/api/intFreshdeskConfiguration/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshdeskConfiguration/intFreshdeskConfiguration.attributes.js b/server/api/intFreshdeskConfiguration/intFreshdeskConfiguration.attributes.js
index 72c65c4..83a2abc 100644
--- a/server/api/intFreshdeskConfiguration/intFreshdeskConfiguration.attributes.js
+++ b/server/api/intFreshdeskConfiguration/intFreshdeskConfiguration.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
-var _0x6591=['STRING','exports'];(function(_0x33a528,_0x216f14){var _0x168145=function(_0x169aac){while(--_0x169aac){_0x33a528['push'](_0x33a528['shift']());}};_0x168145(++_0x216f14);}(_0x6591,0x99));var _0x1659=function(_0x374305,_0x3bf2b1){_0x374305=_0x374305-0x0;var _0x48f9c6=_0x6591[_0x374305];return _0x48f9c6;};'use strict';var Sequelize=require('sequelize');module[_0x1659('0x0')]={'name':{'type':Sequelize[_0x1659('0x1')]},'description':{'type':Sequelize['STRING']}};
\ No newline at end of file
+var _0x9b46=['sequelize','STRING'];(function(_0x231e16,_0x67347b){var _0x570a7c=function(_0x2c35b4){while(--_0x2c35b4){_0x231e16['push'](_0x231e16['shift']());}};_0x570a7c(++_0x67347b);}(_0x9b46,0x1d2));var _0x69b4=function(_0x5d043c,_0xff15e4){_0x5d043c=_0x5d043c-0x0;var _0x422b57=_0x9b46[_0x5d043c];return _0x422b57;};'use strict';var Sequelize=require(_0x69b4('0x0'));module['exports']={'name':{'type':Sequelize[_0x69b4('0x1')]},'description':{'type':Sequelize[_0x69b4('0x1')]}};
\ No newline at end of file
diff --git a/server/api/intFreshdeskConfiguration/intFreshdeskConfiguration.controller.js b/server/api/intFreshdeskConfiguration/intFreshdeskConfiguration.controller.js
index 563910a..e992531 100644
--- a/server/api/intFreshdeskConfiguration/intFreshdeskConfiguration.controller.js
+++ b/server/api/intFreshdeskConfiguration/intFreshdeskConfiguration.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshdeskConfiguration/intFreshdeskConfiguration.model.js b/server/api/intFreshdeskConfiguration/intFreshdeskConfiguration.model.js
index acfa7d2..5d66da4 100644
--- a/server/api/intFreshdeskConfiguration/intFreshdeskConfiguration.model.js
+++ b/server/api/intFreshdeskConfiguration/intFreshdeskConfiguration.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshdeskConfiguration/intFreshdeskConfiguration.rpc.js b/server/api/intFreshdeskConfiguration/intFreshdeskConfiguration.rpc.js
index 61d2cb5..2ee1a36 100644
--- a/server/api/intFreshdeskConfiguration/intFreshdeskConfiguration.rpc.js
+++ b/server/api/intFreshdeskConfiguration/intFreshdeskConfiguration.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshdeskField/index.js b/server/api/intFreshdeskField/index.js
index 68c398a..0ceb2d0 100644
--- a/server/api/intFreshdeskField/index.js
+++ b/server/api/intFreshdeskField/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshdeskField/intFreshdeskField.attributes.js b/server/api/intFreshdeskField/intFreshdeskField.attributes.js
index 272fe5c..f70116d 100644
--- a/server/api/intFreshdeskField/intFreshdeskField.attributes.js
+++ b/server/api/intFreshdeskField/intFreshdeskField.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshdeskField/intFreshdeskField.controller.js b/server/api/intFreshdeskField/intFreshdeskField.controller.js
index a4df42e..bc55831 100644
--- a/server/api/intFreshdeskField/intFreshdeskField.controller.js
+++ b/server/api/intFreshdeskField/intFreshdeskField.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshdeskField/intFreshdeskField.model.js b/server/api/intFreshdeskField/intFreshdeskField.model.js
index 6ded543..a2a6c09 100644
--- a/server/api/intFreshdeskField/intFreshdeskField.model.js
+++ b/server/api/intFreshdeskField/intFreshdeskField.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshdeskField/intFreshdeskField.rpc.js b/server/api/intFreshdeskField/intFreshdeskField.rpc.js
index 008133a..4eb9401 100644
--- a/server/api/intFreshdeskField/intFreshdeskField.rpc.js
+++ b/server/api/intFreshdeskField/intFreshdeskField.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshsalesAccount/index.js b/server/api/intFreshsalesAccount/index.js
index 30157e2..7b1ce71 100644
--- a/server/api/intFreshsalesAccount/index.js
+++ b/server/api/intFreshsalesAccount/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshsalesAccount/intFreshsalesAccount.attributes.js b/server/api/intFreshsalesAccount/intFreshsalesAccount.attributes.js
index 4a1123f..823cc92 100644
--- a/server/api/intFreshsalesAccount/intFreshsalesAccount.attributes.js
+++ b/server/api/intFreshsalesAccount/intFreshsalesAccount.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshsalesAccount/intFreshsalesAccount.controller.js b/server/api/intFreshsalesAccount/intFreshsalesAccount.controller.js
index 323c12e..29a353b 100644
--- a/server/api/intFreshsalesAccount/intFreshsalesAccount.controller.js
+++ b/server/api/intFreshsalesAccount/intFreshsalesAccount.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshsalesAccount/intFreshsalesAccount.model.js b/server/api/intFreshsalesAccount/intFreshsalesAccount.model.js
index 0eae408..87f2de3 100644
--- a/server/api/intFreshsalesAccount/intFreshsalesAccount.model.js
+++ b/server/api/intFreshsalesAccount/intFreshsalesAccount.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshsalesAccount/intFreshsalesAccount.rpc.js b/server/api/intFreshsalesAccount/intFreshsalesAccount.rpc.js
index abc8a92..fe79b73 100644
--- a/server/api/intFreshsalesAccount/intFreshsalesAccount.rpc.js
+++ b/server/api/intFreshsalesAccount/intFreshsalesAccount.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshsalesConfiguration/index.js b/server/api/intFreshsalesConfiguration/index.js
index 61ab015..7f58270 100644
--- a/server/api/intFreshsalesConfiguration/index.js
+++ b/server/api/intFreshsalesConfiguration/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshsalesConfiguration/intFreshsalesConfiguration.attributes.js b/server/api/intFreshsalesConfiguration/intFreshsalesConfiguration.attributes.js
index 72d36b4..d6041c8 100644
--- a/server/api/intFreshsalesConfiguration/intFreshsalesConfiguration.attributes.js
+++ b/server/api/intFreshsalesConfiguration/intFreshsalesConfiguration.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
-var _0xbbaf=['sequelize','STRING'];(function(_0x4743c8,_0x2eba9d){var _0x3d3f15=function(_0x4a2c49){while(--_0x4a2c49){_0x4743c8['push'](_0x4743c8['shift']());}};_0x3d3f15(++_0x2eba9d);}(_0xbbaf,0x122));var _0xfbba=function(_0x54a99d,_0x5237f7){_0x54a99d=_0x54a99d-0x0;var _0x2b1d05=_0xbbaf[_0x54a99d];return _0x2b1d05;};'use strict';var Sequelize=require(_0xfbba('0x0'));module['exports']={'name':{'type':Sequelize[_0xfbba('0x1')]},'description':{'type':Sequelize[_0xfbba('0x1')]}};
\ No newline at end of file
+var _0x9db4=['sequelize','exports','STRING'];(function(_0x32f9ca,_0x2fa8bc){var _0x52e083=function(_0x4fd86a){while(--_0x4fd86a){_0x32f9ca['push'](_0x32f9ca['shift']());}};_0x52e083(++_0x2fa8bc);}(_0x9db4,0x16b));var _0x49db=function(_0x1d8944,_0x4791c7){_0x1d8944=_0x1d8944-0x0;var _0x34c66f=_0x9db4[_0x1d8944];return _0x34c66f;};'use strict';var Sequelize=require(_0x49db('0x0'));module[_0x49db('0x1')]={'name':{'type':Sequelize[_0x49db('0x2')]},'description':{'type':Sequelize['STRING']}};
\ No newline at end of file
diff --git a/server/api/intFreshsalesConfiguration/intFreshsalesConfiguration.controller.js b/server/api/intFreshsalesConfiguration/intFreshsalesConfiguration.controller.js
index 0c0ab34..e39f161 100644
--- a/server/api/intFreshsalesConfiguration/intFreshsalesConfiguration.controller.js
+++ b/server/api/intFreshsalesConfiguration/intFreshsalesConfiguration.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshsalesConfiguration/intFreshsalesConfiguration.model.js b/server/api/intFreshsalesConfiguration/intFreshsalesConfiguration.model.js
index 9d57221..6c4bba5 100644
--- a/server/api/intFreshsalesConfiguration/intFreshsalesConfiguration.model.js
+++ b/server/api/intFreshsalesConfiguration/intFreshsalesConfiguration.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshsalesConfiguration/intFreshsalesConfiguration.rpc.js b/server/api/intFreshsalesConfiguration/intFreshsalesConfiguration.rpc.js
index 4f5714d..5bbde22 100644
--- a/server/api/intFreshsalesConfiguration/intFreshsalesConfiguration.rpc.js
+++ b/server/api/intFreshsalesConfiguration/intFreshsalesConfiguration.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshsalesField/index.js b/server/api/intFreshsalesField/index.js
index c73b376..751a30e 100644
--- a/server/api/intFreshsalesField/index.js
+++ b/server/api/intFreshsalesField/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshsalesField/intFreshsalesField.attributes.js b/server/api/intFreshsalesField/intFreshsalesField.attributes.js
index 0e0b3c1..3e1728f 100644
--- a/server/api/intFreshsalesField/intFreshsalesField.attributes.js
+++ b/server/api/intFreshsalesField/intFreshsalesField.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshsalesField/intFreshsalesField.controller.js b/server/api/intFreshsalesField/intFreshsalesField.controller.js
index d26d948..9d4a788 100644
--- a/server/api/intFreshsalesField/intFreshsalesField.controller.js
+++ b/server/api/intFreshsalesField/intFreshsalesField.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshsalesField/intFreshsalesField.model.js b/server/api/intFreshsalesField/intFreshsalesField.model.js
index f88ae4f..4a58069 100644
--- a/server/api/intFreshsalesField/intFreshsalesField.model.js
+++ b/server/api/intFreshsalesField/intFreshsalesField.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intFreshsalesField/intFreshsalesField.rpc.js b/server/api/intFreshsalesField/intFreshsalesField.rpc.js
index f03a219..7d482dd 100644
--- a/server/api/intFreshsalesField/intFreshsalesField.rpc.js
+++ b/server/api/intFreshsalesField/intFreshsalesField.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSalesforceAccount/index.js b/server/api/intSalesforceAccount/index.js
index c257295..b64ac4d 100644
--- a/server/api/intSalesforceAccount/index.js
+++ b/server/api/intSalesforceAccount/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSalesforceAccount/intSalesforceAccount.attributes.js b/server/api/intSalesforceAccount/intSalesforceAccount.attributes.js
index e013270..1d92c87 100644
--- a/server/api/intSalesforceAccount/intSalesforceAccount.attributes.js
+++ b/server/api/intSalesforceAccount/intSalesforceAccount.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSalesforceAccount/intSalesforceAccount.controller.js b/server/api/intSalesforceAccount/intSalesforceAccount.controller.js
index e3a3052..12a6e09 100644
--- a/server/api/intSalesforceAccount/intSalesforceAccount.controller.js
+++ b/server/api/intSalesforceAccount/intSalesforceAccount.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSalesforceAccount/intSalesforceAccount.model.js b/server/api/intSalesforceAccount/intSalesforceAccount.model.js
index 6453c01..32e999e 100644
--- a/server/api/intSalesforceAccount/intSalesforceAccount.model.js
+++ b/server/api/intSalesforceAccount/intSalesforceAccount.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSalesforceAccount/intSalesforceAccount.rpc.js b/server/api/intSalesforceAccount/intSalesforceAccount.rpc.js
index d5ded57..e9d1e3f 100644
--- a/server/api/intSalesforceAccount/intSalesforceAccount.rpc.js
+++ b/server/api/intSalesforceAccount/intSalesforceAccount.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSalesforceConfiguration/index.js b/server/api/intSalesforceConfiguration/index.js
index faf1c01..544ad0a 100644
--- a/server/api/intSalesforceConfiguration/index.js
+++ b/server/api/intSalesforceConfiguration/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSalesforceConfiguration/intSalesforceConfiguration.attributes.js b/server/api/intSalesforceConfiguration/intSalesforceConfiguration.attributes.js
index f5122ff..6ab956f 100644
--- a/server/api/intSalesforceConfiguration/intSalesforceConfiguration.attributes.js
+++ b/server/api/intSalesforceConfiguration/intSalesforceConfiguration.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSalesforceConfiguration/intSalesforceConfiguration.controller.js b/server/api/intSalesforceConfiguration/intSalesforceConfiguration.controller.js
index d3e7cf4..0b0e6d7 100644
--- a/server/api/intSalesforceConfiguration/intSalesforceConfiguration.controller.js
+++ b/server/api/intSalesforceConfiguration/intSalesforceConfiguration.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSalesforceConfiguration/intSalesforceConfiguration.model.js b/server/api/intSalesforceConfiguration/intSalesforceConfiguration.model.js
index 942e986..11325fc 100644
--- a/server/api/intSalesforceConfiguration/intSalesforceConfiguration.model.js
+++ b/server/api/intSalesforceConfiguration/intSalesforceConfiguration.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSalesforceConfiguration/intSalesforceConfiguration.rpc.js b/server/api/intSalesforceConfiguration/intSalesforceConfiguration.rpc.js
index e07d7f6..9580e58 100644
--- a/server/api/intSalesforceConfiguration/intSalesforceConfiguration.rpc.js
+++ b/server/api/intSalesforceConfiguration/intSalesforceConfiguration.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSalesforceField/index.js b/server/api/intSalesforceField/index.js
index 893ea44..0cb4d53 100644
--- a/server/api/intSalesforceField/index.js
+++ b/server/api/intSalesforceField/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSalesforceField/intSalesforceField.attributes.js b/server/api/intSalesforceField/intSalesforceField.attributes.js
index aa31dec..5ce8045 100644
--- a/server/api/intSalesforceField/intSalesforceField.attributes.js
+++ b/server/api/intSalesforceField/intSalesforceField.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSalesforceField/intSalesforceField.controller.js b/server/api/intSalesforceField/intSalesforceField.controller.js
index c0a1d7d..4afaaf7 100644
--- a/server/api/intSalesforceField/intSalesforceField.controller.js
+++ b/server/api/intSalesforceField/intSalesforceField.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSalesforceField/intSalesforceField.model.js b/server/api/intSalesforceField/intSalesforceField.model.js
index 5349275..ed8ad50 100644
--- a/server/api/intSalesforceField/intSalesforceField.model.js
+++ b/server/api/intSalesforceField/intSalesforceField.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSalesforceField/intSalesforceField.rpc.js b/server/api/intSalesforceField/intSalesforceField.rpc.js
index e7583e5..49b7ff5 100644
--- a/server/api/intSalesforceField/intSalesforceField.rpc.js
+++ b/server/api/intSalesforceField/intSalesforceField.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intServicenowAccount/index.js b/server/api/intServicenowAccount/index.js
index efa3ca7..638b137 100644
--- a/server/api/intServicenowAccount/index.js
+++ b/server/api/intServicenowAccount/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intServicenowAccount/intServicenowAccount.attributes.js b/server/api/intServicenowAccount/intServicenowAccount.attributes.js
index 4efddae..7c21b6a 100644
--- a/server/api/intServicenowAccount/intServicenowAccount.attributes.js
+++ b/server/api/intServicenowAccount/intServicenowAccount.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intServicenowAccount/intServicenowAccount.controller.js b/server/api/intServicenowAccount/intServicenowAccount.controller.js
index 4868b9a..50aa761 100644
--- a/server/api/intServicenowAccount/intServicenowAccount.controller.js
+++ b/server/api/intServicenowAccount/intServicenowAccount.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intServicenowAccount/intServicenowAccount.model.js b/server/api/intServicenowAccount/intServicenowAccount.model.js
index 4c72858..a5bddb4 100644
--- a/server/api/intServicenowAccount/intServicenowAccount.model.js
+++ b/server/api/intServicenowAccount/intServicenowAccount.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intServicenowAccount/intServicenowAccount.rpc.js b/server/api/intServicenowAccount/intServicenowAccount.rpc.js
index 8dd4026..c3272fb 100644
--- a/server/api/intServicenowAccount/intServicenowAccount.rpc.js
+++ b/server/api/intServicenowAccount/intServicenowAccount.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intServicenowConfiguration/index.js b/server/api/intServicenowConfiguration/index.js
index e1d33a9..8dfabca 100644
--- a/server/api/intServicenowConfiguration/index.js
+++ b/server/api/intServicenowConfiguration/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intServicenowConfiguration/intServicenowConfiguration.attributes.js b/server/api/intServicenowConfiguration/intServicenowConfiguration.attributes.js
index afa3ef9..d3ab910 100644
--- a/server/api/intServicenowConfiguration/intServicenowConfiguration.attributes.js
+++ b/server/api/intServicenowConfiguration/intServicenowConfiguration.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
-var _0xefca=['sequelize','exports','STRING'];(function(_0x2641f9,_0x26715f){var _0x585741=function(_0x2d1462){while(--_0x2d1462){_0x2641f9['push'](_0x2641f9['shift']());}};_0x585741(++_0x26715f);}(_0xefca,0xe7));var _0xaefc=function(_0x41ee16,_0xfa94c3){_0x41ee16=_0x41ee16-0x0;var _0x1f60de=_0xefca[_0x41ee16];return _0x1f60de;};'use strict';var Sequelize=require(_0xaefc('0x0'));module[_0xaefc('0x1')]={'name':{'type':Sequelize['STRING']},'description':{'type':Sequelize[_0xaefc('0x2')]}};
\ No newline at end of file
+var _0x2f4f=['sequelize','exports','STRING'];(function(_0x164eca,_0x555e28){var _0x2ce562=function(_0x148ca6){while(--_0x148ca6){_0x164eca['push'](_0x164eca['shift']());}};_0x2ce562(++_0x555e28);}(_0x2f4f,0x75));var _0xf2f4=function(_0x5700a2,_0x19ffed){_0x5700a2=_0x5700a2-0x0;var _0x1a424d=_0x2f4f[_0x5700a2];return _0x1a424d;};'use strict';var Sequelize=require(_0xf2f4('0x0'));module[_0xf2f4('0x1')]={'name':{'type':Sequelize[_0xf2f4('0x2')]},'description':{'type':Sequelize['STRING']}};
\ No newline at end of file
diff --git a/server/api/intServicenowConfiguration/intServicenowConfiguration.controller.js b/server/api/intServicenowConfiguration/intServicenowConfiguration.controller.js
index 4db77cd..e165a66 100644
--- a/server/api/intServicenowConfiguration/intServicenowConfiguration.controller.js
+++ b/server/api/intServicenowConfiguration/intServicenowConfiguration.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intServicenowConfiguration/intServicenowConfiguration.model.js b/server/api/intServicenowConfiguration/intServicenowConfiguration.model.js
index a65d897..4389476 100644
--- a/server/api/intServicenowConfiguration/intServicenowConfiguration.model.js
+++ b/server/api/intServicenowConfiguration/intServicenowConfiguration.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intServicenowConfiguration/intServicenowConfiguration.rpc.js b/server/api/intServicenowConfiguration/intServicenowConfiguration.rpc.js
index f5df389..1a7a73e 100644
--- a/server/api/intServicenowConfiguration/intServicenowConfiguration.rpc.js
+++ b/server/api/intServicenowConfiguration/intServicenowConfiguration.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intServicenowField/index.js b/server/api/intServicenowField/index.js
index ad17f41..026b30b 100644
--- a/server/api/intServicenowField/index.js
+++ b/server/api/intServicenowField/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intServicenowField/intServicenowField.attributes.js b/server/api/intServicenowField/intServicenowField.attributes.js
index 2532134..0ce521a 100644
--- a/server/api/intServicenowField/intServicenowField.attributes.js
+++ b/server/api/intServicenowField/intServicenowField.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intServicenowField/intServicenowField.controller.js b/server/api/intServicenowField/intServicenowField.controller.js
index ce24915..bc1a6e9 100644
--- a/server/api/intServicenowField/intServicenowField.controller.js
+++ b/server/api/intServicenowField/intServicenowField.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intServicenowField/intServicenowField.model.js b/server/api/intServicenowField/intServicenowField.model.js
index 4a548dc..5ac1637 100644
--- a/server/api/intServicenowField/intServicenowField.model.js
+++ b/server/api/intServicenowField/intServicenowField.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intServicenowField/intServicenowField.rpc.js b/server/api/intServicenowField/intServicenowField.rpc.js
index 95b0c8a..5fac280 100644
--- a/server/api/intServicenowField/intServicenowField.rpc.js
+++ b/server/api/intServicenowField/intServicenowField.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSugarcrmAccount/index.js b/server/api/intSugarcrmAccount/index.js
index 9da2a50..932635c 100644
--- a/server/api/intSugarcrmAccount/index.js
+++ b/server/api/intSugarcrmAccount/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSugarcrmAccount/intSugarcrmAccount.attributes.js b/server/api/intSugarcrmAccount/intSugarcrmAccount.attributes.js
index ac6e646..db6be8e 100644
--- a/server/api/intSugarcrmAccount/intSugarcrmAccount.attributes.js
+++ b/server/api/intSugarcrmAccount/intSugarcrmAccount.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSugarcrmAccount/intSugarcrmAccount.controller.js b/server/api/intSugarcrmAccount/intSugarcrmAccount.controller.js
index a0d0157..b12f637 100644
--- a/server/api/intSugarcrmAccount/intSugarcrmAccount.controller.js
+++ b/server/api/intSugarcrmAccount/intSugarcrmAccount.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSugarcrmAccount/intSugarcrmAccount.model.js b/server/api/intSugarcrmAccount/intSugarcrmAccount.model.js
index bed3fae..49e4922 100644
--- a/server/api/intSugarcrmAccount/intSugarcrmAccount.model.js
+++ b/server/api/intSugarcrmAccount/intSugarcrmAccount.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSugarcrmAccount/intSugarcrmAccount.rpc.js b/server/api/intSugarcrmAccount/intSugarcrmAccount.rpc.js
index f7c0f63..22683b8 100644
--- a/server/api/intSugarcrmAccount/intSugarcrmAccount.rpc.js
+++ b/server/api/intSugarcrmAccount/intSugarcrmAccount.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSugarcrmConfiguration/index.js b/server/api/intSugarcrmConfiguration/index.js
index 267f717..208a0fb 100644
--- a/server/api/intSugarcrmConfiguration/index.js
+++ b/server/api/intSugarcrmConfiguration/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSugarcrmConfiguration/intSugarcrmConfiguration.attributes.js b/server/api/intSugarcrmConfiguration/intSugarcrmConfiguration.attributes.js
index f9a8690..7cd7a6a 100644
--- a/server/api/intSugarcrmConfiguration/intSugarcrmConfiguration.attributes.js
+++ b/server/api/intSugarcrmConfiguration/intSugarcrmConfiguration.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
-var _0x3aa3=['exports'];(function(_0x4c39e1,_0x3d066e){var _0xca01f7=function(_0x3016eb){while(--_0x3016eb){_0x4c39e1['push'](_0x4c39e1['shift']());}};_0xca01f7(++_0x3d066e);}(_0x3aa3,0x1b7));var _0x33aa=function(_0x460fd7,_0x2012db){_0x460fd7=_0x460fd7-0x0;var _0x44d1c2=_0x3aa3[_0x460fd7];return _0x44d1c2;};'use strict';var Sequelize=require('sequelize');module[_0x33aa('0x0')]={'name':{'type':Sequelize['STRING']},'description':{'type':Sequelize['STRING']}};
\ No newline at end of file
+var _0xe53a=['STRING','exports'];(function(_0x22644c,_0x931630){var _0x36c060=function(_0x3803e3){while(--_0x3803e3){_0x22644c['push'](_0x22644c['shift']());}};_0x36c060(++_0x931630);}(_0xe53a,0xb7));var _0xae53=function(_0x506735,_0x388fc3){_0x506735=_0x506735-0x0;var _0x52f210=_0xe53a[_0x506735];return _0x52f210;};'use strict';var Sequelize=require('sequelize');module[_0xae53('0x0')]={'name':{'type':Sequelize[_0xae53('0x1')]},'description':{'type':Sequelize['STRING']}};
\ No newline at end of file
diff --git a/server/api/intSugarcrmConfiguration/intSugarcrmConfiguration.controller.js b/server/api/intSugarcrmConfiguration/intSugarcrmConfiguration.controller.js
index d342f69..bd0f959 100644
--- a/server/api/intSugarcrmConfiguration/intSugarcrmConfiguration.controller.js
+++ b/server/api/intSugarcrmConfiguration/intSugarcrmConfiguration.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSugarcrmConfiguration/intSugarcrmConfiguration.model.js b/server/api/intSugarcrmConfiguration/intSugarcrmConfiguration.model.js
index 875b461..a805eb7 100644
--- a/server/api/intSugarcrmConfiguration/intSugarcrmConfiguration.model.js
+++ b/server/api/intSugarcrmConfiguration/intSugarcrmConfiguration.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSugarcrmConfiguration/intSugarcrmConfiguration.rpc.js b/server/api/intSugarcrmConfiguration/intSugarcrmConfiguration.rpc.js
index 171d06d..e0a2349 100644
--- a/server/api/intSugarcrmConfiguration/intSugarcrmConfiguration.rpc.js
+++ b/server/api/intSugarcrmConfiguration/intSugarcrmConfiguration.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSugarcrmField/index.js b/server/api/intSugarcrmField/index.js
index 3dd441b..e41e11c 100644
--- a/server/api/intSugarcrmField/index.js
+++ b/server/api/intSugarcrmField/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSugarcrmField/intSugarcrmField.attributes.js b/server/api/intSugarcrmField/intSugarcrmField.attributes.js
index bc81bb8..760ef29 100644
--- a/server/api/intSugarcrmField/intSugarcrmField.attributes.js
+++ b/server/api/intSugarcrmField/intSugarcrmField.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSugarcrmField/intSugarcrmField.controller.js b/server/api/intSugarcrmField/intSugarcrmField.controller.js
index 740d935..c6214eb 100644
--- a/server/api/intSugarcrmField/intSugarcrmField.controller.js
+++ b/server/api/intSugarcrmField/intSugarcrmField.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSugarcrmField/intSugarcrmField.model.js b/server/api/intSugarcrmField/intSugarcrmField.model.js
index 93c38ba..bca45e2 100644
--- a/server/api/intSugarcrmField/intSugarcrmField.model.js
+++ b/server/api/intSugarcrmField/intSugarcrmField.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intSugarcrmField/intSugarcrmField.rpc.js b/server/api/intSugarcrmField/intSugarcrmField.rpc.js
index 41e3895..8d17d3a 100644
--- a/server/api/intSugarcrmField/intSugarcrmField.rpc.js
+++ b/server/api/intSugarcrmField/intSugarcrmField.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intVtigerAccount/index.js b/server/api/intVtigerAccount/index.js
index c298844..8333cd4 100644
--- a/server/api/intVtigerAccount/index.js
+++ b/server/api/intVtigerAccount/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intVtigerAccount/intVtigerAccount.attributes.js b/server/api/intVtigerAccount/intVtigerAccount.attributes.js
index 3cec3e8..1b7eaf0 100644
--- a/server/api/intVtigerAccount/intVtigerAccount.attributes.js
+++ b/server/api/intVtigerAccount/intVtigerAccount.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intVtigerAccount/intVtigerAccount.controller.js b/server/api/intVtigerAccount/intVtigerAccount.controller.js
index 468f6e8..1bc4aa0 100644
--- a/server/api/intVtigerAccount/intVtigerAccount.controller.js
+++ b/server/api/intVtigerAccount/intVtigerAccount.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intVtigerAccount/intVtigerAccount.model.js b/server/api/intVtigerAccount/intVtigerAccount.model.js
index bb24db9..7313d28 100644
--- a/server/api/intVtigerAccount/intVtigerAccount.model.js
+++ b/server/api/intVtigerAccount/intVtigerAccount.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intVtigerAccount/intVtigerAccount.rpc.js b/server/api/intVtigerAccount/intVtigerAccount.rpc.js
index 3377190..8f74a1d 100644
--- a/server/api/intVtigerAccount/intVtigerAccount.rpc.js
+++ b/server/api/intVtigerAccount/intVtigerAccount.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intVtigerConfiguration/index.js b/server/api/intVtigerConfiguration/index.js
index d22f0c0..6369714 100644
--- a/server/api/intVtigerConfiguration/index.js
+++ b/server/api/intVtigerConfiguration/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intVtigerConfiguration/intVtigerConfiguration.attributes.js b/server/api/intVtigerConfiguration/intVtigerConfiguration.attributes.js
index aa11e55..6b140a1 100644
--- a/server/api/intVtigerConfiguration/intVtigerConfiguration.attributes.js
+++ b/server/api/intVtigerConfiguration/intVtigerConfiguration.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
-var _0x6db0=['STRING'];(function(_0x5122f7,_0x3ea2dc){var _0x49c774=function(_0x288ebe){while(--_0x288ebe){_0x5122f7['push'](_0x5122f7['shift']());}};_0x49c774(++_0x3ea2dc);}(_0x6db0,0x1b8));var _0x06db=function(_0x1c2df8,_0x2f00b3){_0x1c2df8=_0x1c2df8-0x0;var _0x5c368e=_0x6db0[_0x1c2df8];return _0x5c368e;};'use strict';var Sequelize=require('sequelize');module['exports']={'name':{'type':Sequelize[_0x06db('0x0')]},'description':{'type':Sequelize[_0x06db('0x0')]}};
\ No newline at end of file
+var _0x2dde=['STRING','sequelize'];(function(_0x23fbc6,_0x8a1f98){var _0x3df42e=function(_0x2abaa3){while(--_0x2abaa3){_0x23fbc6['push'](_0x23fbc6['shift']());}};_0x3df42e(++_0x8a1f98);}(_0x2dde,0xbb));var _0xe2dd=function(_0x62d0f,_0x4f2247){_0x62d0f=_0x62d0f-0x0;var _0x516f45=_0x2dde[_0x62d0f];return _0x516f45;};'use strict';var Sequelize=require(_0xe2dd('0x0'));module['exports']={'name':{'type':Sequelize['STRING']},'description':{'type':Sequelize[_0xe2dd('0x1')]}};
\ No newline at end of file
diff --git a/server/api/intVtigerConfiguration/intVtigerConfiguration.controller.js b/server/api/intVtigerConfiguration/intVtigerConfiguration.controller.js
index 172153b..ee4c46d 100644
--- a/server/api/intVtigerConfiguration/intVtigerConfiguration.controller.js
+++ b/server/api/intVtigerConfiguration/intVtigerConfiguration.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intVtigerConfiguration/intVtigerConfiguration.model.js b/server/api/intVtigerConfiguration/intVtigerConfiguration.model.js
index 9a32b20..cee5c0f 100644
--- a/server/api/intVtigerConfiguration/intVtigerConfiguration.model.js
+++ b/server/api/intVtigerConfiguration/intVtigerConfiguration.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intVtigerConfiguration/intVtigerConfiguration.rpc.js b/server/api/intVtigerConfiguration/intVtigerConfiguration.rpc.js
index 6f02e22..eea3490 100644
--- a/server/api/intVtigerConfiguration/intVtigerConfiguration.rpc.js
+++ b/server/api/intVtigerConfiguration/intVtigerConfiguration.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intVtigerField/index.js b/server/api/intVtigerField/index.js
index f8c52e8..98438c3 100644
--- a/server/api/intVtigerField/index.js
+++ b/server/api/intVtigerField/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intVtigerField/intVtigerField.attributes.js b/server/api/intVtigerField/intVtigerField.attributes.js
index 1440a71..1de63af 100644
--- a/server/api/intVtigerField/intVtigerField.attributes.js
+++ b/server/api/intVtigerField/intVtigerField.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intVtigerField/intVtigerField.controller.js b/server/api/intVtigerField/intVtigerField.controller.js
index 2eda2ca..b36cb27 100644
--- a/server/api/intVtigerField/intVtigerField.controller.js
+++ b/server/api/intVtigerField/intVtigerField.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intVtigerField/intVtigerField.model.js b/server/api/intVtigerField/intVtigerField.model.js
index c6c81ea..fce289e 100644
--- a/server/api/intVtigerField/intVtigerField.model.js
+++ b/server/api/intVtigerField/intVtigerField.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intVtigerField/intVtigerField.rpc.js b/server/api/intVtigerField/intVtigerField.rpc.js
index e1b3dda..2ad4fb7 100644
--- a/server/api/intVtigerField/intVtigerField.rpc.js
+++ b/server/api/intVtigerField/intVtigerField.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZendeskAccount/index.js b/server/api/intZendeskAccount/index.js
index d09cd34..00f7d76 100644
--- a/server/api/intZendeskAccount/index.js
+++ b/server/api/intZendeskAccount/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZendeskAccount/intZendeskAccount.attributes.js b/server/api/intZendeskAccount/intZendeskAccount.attributes.js
index 3e87eb9..586fcdf 100644
--- a/server/api/intZendeskAccount/intZendeskAccount.attributes.js
+++ b/server/api/intZendeskAccount/intZendeskAccount.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZendeskAccount/intZendeskAccount.controller.js b/server/api/intZendeskAccount/intZendeskAccount.controller.js
index 8dfd33f..e672668 100644
--- a/server/api/intZendeskAccount/intZendeskAccount.controller.js
+++ b/server/api/intZendeskAccount/intZendeskAccount.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZendeskAccount/intZendeskAccount.model.js b/server/api/intZendeskAccount/intZendeskAccount.model.js
index d920ad3..16bbbb9 100644
--- a/server/api/intZendeskAccount/intZendeskAccount.model.js
+++ b/server/api/intZendeskAccount/intZendeskAccount.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZendeskAccount/intZendeskAccount.rpc.js b/server/api/intZendeskAccount/intZendeskAccount.rpc.js
index 58b3028..fffe509 100644
--- a/server/api/intZendeskAccount/intZendeskAccount.rpc.js
+++ b/server/api/intZendeskAccount/intZendeskAccount.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZendeskConfiguration/index.js b/server/api/intZendeskConfiguration/index.js
index c965b4a..2b104cf 100644
--- a/server/api/intZendeskConfiguration/index.js
+++ b/server/api/intZendeskConfiguration/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZendeskConfiguration/intZendeskConfiguration.attributes.js b/server/api/intZendeskConfiguration/intZendeskConfiguration.attributes.js
index 532aac4..ee05869 100644
--- a/server/api/intZendeskConfiguration/intZendeskConfiguration.attributes.js
+++ b/server/api/intZendeskConfiguration/intZendeskConfiguration.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
-var _0x74fc=['STRING','sequelize','exports'];(function(_0x4b4fbc,_0x1fc1e8){var _0x26389f=function(_0x404557){while(--_0x404557){_0x4b4fbc['push'](_0x4b4fbc['shift']());}};_0x26389f(++_0x1fc1e8);}(_0x74fc,0x94));var _0xc74f=function(_0x4ed760,_0x5dce3e){_0x4ed760=_0x4ed760-0x0;var _0x475150=_0x74fc[_0x4ed760];return _0x475150;};'use strict';var Sequelize=require(_0xc74f('0x0'));module[_0xc74f('0x1')]={'name':{'type':Sequelize[_0xc74f('0x2')]},'description':{'type':Sequelize[_0xc74f('0x2')]}};
\ No newline at end of file
+var _0x3ad0=['sequelize','exports','STRING'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0x3ad0,0x195));var _0x03ad=function(_0x3cc596,_0x3b2807){_0x3cc596=_0x3cc596-0x0;var _0x55b4b4=_0x3ad0[_0x3cc596];return _0x55b4b4;};'use strict';var Sequelize=require(_0x03ad('0x0'));module[_0x03ad('0x1')]={'name':{'type':Sequelize[_0x03ad('0x2')]},'description':{'type':Sequelize[_0x03ad('0x2')]}};
\ No newline at end of file
diff --git a/server/api/intZendeskConfiguration/intZendeskConfiguration.controller.js b/server/api/intZendeskConfiguration/intZendeskConfiguration.controller.js
index c2eb76f..42cd220 100644
--- a/server/api/intZendeskConfiguration/intZendeskConfiguration.controller.js
+++ b/server/api/intZendeskConfiguration/intZendeskConfiguration.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZendeskConfiguration/intZendeskConfiguration.model.js b/server/api/intZendeskConfiguration/intZendeskConfiguration.model.js
index 014c172..ce2e04e 100644
--- a/server/api/intZendeskConfiguration/intZendeskConfiguration.model.js
+++ b/server/api/intZendeskConfiguration/intZendeskConfiguration.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZendeskConfiguration/intZendeskConfiguration.rpc.js b/server/api/intZendeskConfiguration/intZendeskConfiguration.rpc.js
index 58f6b71..7b6d3d3 100644
--- a/server/api/intZendeskConfiguration/intZendeskConfiguration.rpc.js
+++ b/server/api/intZendeskConfiguration/intZendeskConfiguration.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZendeskField/index.js b/server/api/intZendeskField/index.js
index d97358a..614e5f6 100644
--- a/server/api/intZendeskField/index.js
+++ b/server/api/intZendeskField/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZendeskField/intZendeskField.attributes.js b/server/api/intZendeskField/intZendeskField.attributes.js
index 89b0c36..0a7c72d 100644
--- a/server/api/intZendeskField/intZendeskField.attributes.js
+++ b/server/api/intZendeskField/intZendeskField.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZendeskField/intZendeskField.controller.js b/server/api/intZendeskField/intZendeskField.controller.js
index d08fadb..934bf45 100644
--- a/server/api/intZendeskField/intZendeskField.controller.js
+++ b/server/api/intZendeskField/intZendeskField.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZendeskField/intZendeskField.model.js b/server/api/intZendeskField/intZendeskField.model.js
index 87034ac..a3179eb 100644
--- a/server/api/intZendeskField/intZendeskField.model.js
+++ b/server/api/intZendeskField/intZendeskField.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZendeskField/intZendeskField.rpc.js b/server/api/intZendeskField/intZendeskField.rpc.js
index 448351f..da5e974 100644
--- a/server/api/intZendeskField/intZendeskField.rpc.js
+++ b/server/api/intZendeskField/intZendeskField.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZohoAccount/index.js b/server/api/intZohoAccount/index.js
index 2c03b71..305bf08 100644
--- a/server/api/intZohoAccount/index.js
+++ b/server/api/intZohoAccount/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZohoAccount/intZohoAccount.attributes.js b/server/api/intZohoAccount/intZohoAccount.attributes.js
index a815e50..c39f50d 100644
--- a/server/api/intZohoAccount/intZohoAccount.attributes.js
+++ b/server/api/intZohoAccount/intZohoAccount.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZohoAccount/intZohoAccount.controller.js b/server/api/intZohoAccount/intZohoAccount.controller.js
index c1f292a..fa9c0df 100644
--- a/server/api/intZohoAccount/intZohoAccount.controller.js
+++ b/server/api/intZohoAccount/intZohoAccount.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZohoAccount/intZohoAccount.model.js b/server/api/intZohoAccount/intZohoAccount.model.js
index 4392228..5a95790 100644
--- a/server/api/intZohoAccount/intZohoAccount.model.js
+++ b/server/api/intZohoAccount/intZohoAccount.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZohoAccount/intZohoAccount.rpc.js b/server/api/intZohoAccount/intZohoAccount.rpc.js
index 9bbea70..4d55b5e 100644
--- a/server/api/intZohoAccount/intZohoAccount.rpc.js
+++ b/server/api/intZohoAccount/intZohoAccount.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZohoConfiguration/index.js b/server/api/intZohoConfiguration/index.js
index 856601d..edfda77 100644
--- a/server/api/intZohoConfiguration/index.js
+++ b/server/api/intZohoConfiguration/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZohoConfiguration/intZohoConfiguration.attributes.js b/server/api/intZohoConfiguration/intZohoConfiguration.attributes.js
index 2dc32c3..7d61896 100644
--- a/server/api/intZohoConfiguration/intZohoConfiguration.attributes.js
+++ b/server/api/intZohoConfiguration/intZohoConfiguration.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZohoConfiguration/intZohoConfiguration.controller.js b/server/api/intZohoConfiguration/intZohoConfiguration.controller.js
index 1323d9b..9ca0626 100644
--- a/server/api/intZohoConfiguration/intZohoConfiguration.controller.js
+++ b/server/api/intZohoConfiguration/intZohoConfiguration.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZohoConfiguration/intZohoConfiguration.model.js b/server/api/intZohoConfiguration/intZohoConfiguration.model.js
index de5db31..8417ae1 100644
--- a/server/api/intZohoConfiguration/intZohoConfiguration.model.js
+++ b/server/api/intZohoConfiguration/intZohoConfiguration.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZohoConfiguration/intZohoConfiguration.rpc.js b/server/api/intZohoConfiguration/intZohoConfiguration.rpc.js
index 94cda65..2c328fd 100644
--- a/server/api/intZohoConfiguration/intZohoConfiguration.rpc.js
+++ b/server/api/intZohoConfiguration/intZohoConfiguration.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZohoField/index.js b/server/api/intZohoField/index.js
index 7e4ec2a..4b6b484 100644
--- a/server/api/intZohoField/index.js
+++ b/server/api/intZohoField/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZohoField/intZohoField.attributes.js b/server/api/intZohoField/intZohoField.attributes.js
index 6c365bb..1173cff 100644
--- a/server/api/intZohoField/intZohoField.attributes.js
+++ b/server/api/intZohoField/intZohoField.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZohoField/intZohoField.controller.js b/server/api/intZohoField/intZohoField.controller.js
index 2b75df4..0f09015 100644
--- a/server/api/intZohoField/intZohoField.controller.js
+++ b/server/api/intZohoField/intZohoField.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZohoField/intZohoField.model.js b/server/api/intZohoField/intZohoField.model.js
index d06fe6e..5aec1af 100644
--- a/server/api/intZohoField/intZohoField.model.js
+++ b/server/api/intZohoField/intZohoField.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/intZohoField/intZohoField.rpc.js b/server/api/intZohoField/intZohoField.rpc.js
index cc47829..6168d43 100644
--- a/server/api/intZohoField/intZohoField.rpc.js
+++ b/server/api/intZohoField/intZohoField.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/integration/index.js b/server/api/integration/index.js
index 1d79022..d4b7458 100644
--- a/server/api/integration/index.js
+++ b/server/api/integration/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/integration/integration.attributes.js b/server/api/integration/integration.attributes.js
index edc617a..d3abbb0 100644
--- a/server/api/integration/integration.attributes.js
+++ b/server/api/integration/integration.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/integration/integration.controller.js b/server/api/integration/integration.controller.js
index ead0c7e..db37a1e 100644
--- a/server/api/integration/integration.controller.js
+++ b/server/api/integration/integration.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/integration/integration.model.js b/server/api/integration/integration.model.js
index 88a7dab..733aa26 100644
--- a/server/api/integration/integration.model.js
+++ b/server/api/integration/integration.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/integration/integration.rpc.js b/server/api/integration/integration.rpc.js
index 53b6456..9c3cda6 100644
--- a/server/api/integration/integration.rpc.js
+++ b/server/api/integration/integration.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/integrationReport/index.js b/server/api/integrationReport/index.js
index d2312bc..1544b0c 100644
--- a/server/api/integrationReport/index.js
+++ b/server/api/integrationReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/integrationReport/integrationReport.attributes.js b/server/api/integrationReport/integrationReport.attributes.js
index 3a7580e..b452161 100644
--- a/server/api/integrationReport/integrationReport.attributes.js
+++ b/server/api/integrationReport/integrationReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/integrationReport/integrationReport.controller.js b/server/api/integrationReport/integrationReport.controller.js
index 0e37280..42e3add 100644
--- a/server/api/integrationReport/integrationReport.controller.js
+++ b/server/api/integrationReport/integrationReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/integrationReport/integrationReport.model.js b/server/api/integrationReport/integrationReport.model.js
index 536c348..dbaf898 100644
--- a/server/api/integrationReport/integrationReport.model.js
+++ b/server/api/integrationReport/integrationReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/integrationReport/integrationReport.rpc.js b/server/api/integrationReport/integrationReport.rpc.js
index 6db33ff..9a4b75b 100644
--- a/server/api/integrationReport/integrationReport.rpc.js
+++ b/server/api/integrationReport/integrationReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/interval/index.js b/server/api/interval/index.js
index 8d7acfe..32881b1 100644
--- a/server/api/interval/index.js
+++ b/server/api/interval/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/interval/interval.attributes.js b/server/api/interval/interval.attributes.js
index 30e4a09..5e76364 100644
--- a/server/api/interval/interval.attributes.js
+++ b/server/api/interval/interval.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/interval/interval.controller.js b/server/api/interval/interval.controller.js
index 62d1e26..fef70f6 100644
--- a/server/api/interval/interval.controller.js
+++ b/server/api/interval/interval.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/interval/interval.model.js b/server/api/interval/interval.model.js
index 5cf9991..40003d8 100644
--- a/server/api/interval/interval.model.js
+++ b/server/api/interval/interval.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/interval/interval.rpc.js b/server/api/interval/interval.rpc.js
index 5f8abf4..03dc43b 100644
--- a/server/api/interval/interval.rpc.js
+++ b/server/api/interval/interval.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/jira/index.js b/server/api/jira/index.js
index f21ef8c..6aeed11 100644
--- a/server/api/jira/index.js
+++ b/server/api/jira/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/jira/jira.controller.js b/server/api/jira/jira.controller.js
index 6803117..c5daf74 100644
--- a/server/api/jira/jira.controller.js
+++ b/server/api/jira/jira.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/jscriptyAnswerReport/index.js b/server/api/jscriptyAnswerReport/index.js
index 3b6516d..2434e44 100644
--- a/server/api/jscriptyAnswerReport/index.js
+++ b/server/api/jscriptyAnswerReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/jscriptyAnswerReport/jscriptyAnswerReport.attributes.js b/server/api/jscriptyAnswerReport/jscriptyAnswerReport.attributes.js
index 9b36786..188f5f2 100644
--- a/server/api/jscriptyAnswerReport/jscriptyAnswerReport.attributes.js
+++ b/server/api/jscriptyAnswerReport/jscriptyAnswerReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/jscriptyAnswerReport/jscriptyAnswerReport.controller.js b/server/api/jscriptyAnswerReport/jscriptyAnswerReport.controller.js
index f231786..f8374ac 100644
--- a/server/api/jscriptyAnswerReport/jscriptyAnswerReport.controller.js
+++ b/server/api/jscriptyAnswerReport/jscriptyAnswerReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/jscriptyAnswerReport/jscriptyAnswerReport.model.js b/server/api/jscriptyAnswerReport/jscriptyAnswerReport.model.js
index d70b1ba..9f7085b 100644
--- a/server/api/jscriptyAnswerReport/jscriptyAnswerReport.model.js
+++ b/server/api/jscriptyAnswerReport/jscriptyAnswerReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/jscriptyAnswerReport/jscriptyAnswerReport.rpc.js b/server/api/jscriptyAnswerReport/jscriptyAnswerReport.rpc.js
index 019629f..d42197a 100644
--- a/server/api/jscriptyAnswerReport/jscriptyAnswerReport.rpc.js
+++ b/server/api/jscriptyAnswerReport/jscriptyAnswerReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/jscriptyProject/index.js b/server/api/jscriptyProject/index.js
index ecc76bd..5e1d781 100644
--- a/server/api/jscriptyProject/index.js
+++ b/server/api/jscriptyProject/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/jscriptyProject/jscriptyProject.attributes.js b/server/api/jscriptyProject/jscriptyProject.attributes.js
index 156355c..e27996f 100644
--- a/server/api/jscriptyProject/jscriptyProject.attributes.js
+++ b/server/api/jscriptyProject/jscriptyProject.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/jscriptyProject/jscriptyProject.controller.js b/server/api/jscriptyProject/jscriptyProject.controller.js
index e595801..cb8f120 100644
--- a/server/api/jscriptyProject/jscriptyProject.controller.js
+++ b/server/api/jscriptyProject/jscriptyProject.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/jscriptyProject/jscriptyProject.model.js b/server/api/jscriptyProject/jscriptyProject.model.js
index 2ba8cd7..cb8cdae 100644
--- a/server/api/jscriptyProject/jscriptyProject.model.js
+++ b/server/api/jscriptyProject/jscriptyProject.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/jscriptyProject/jscriptyProject.rpc.js b/server/api/jscriptyProject/jscriptyProject.rpc.js
index fcfc594..3c99b50 100644
--- a/server/api/jscriptyProject/jscriptyProject.rpc.js
+++ b/server/api/jscriptyProject/jscriptyProject.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/jscriptyQuestionReport/index.js b/server/api/jscriptyQuestionReport/index.js
index a8139c7..40bfe0f 100644
--- a/server/api/jscriptyQuestionReport/index.js
+++ b/server/api/jscriptyQuestionReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/jscriptyQuestionReport/jscriptyQuestionReport.attributes.js b/server/api/jscriptyQuestionReport/jscriptyQuestionReport.attributes.js
index 7427f91..c60b443 100644
--- a/server/api/jscriptyQuestionReport/jscriptyQuestionReport.attributes.js
+++ b/server/api/jscriptyQuestionReport/jscriptyQuestionReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/jscriptyQuestionReport/jscriptyQuestionReport.controller.js b/server/api/jscriptyQuestionReport/jscriptyQuestionReport.controller.js
index dbe06f2..aa14a89 100644
--- a/server/api/jscriptyQuestionReport/jscriptyQuestionReport.controller.js
+++ b/server/api/jscriptyQuestionReport/jscriptyQuestionReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/jscriptyQuestionReport/jscriptyQuestionReport.model.js b/server/api/jscriptyQuestionReport/jscriptyQuestionReport.model.js
index 830e019..baaebde 100644
--- a/server/api/jscriptyQuestionReport/jscriptyQuestionReport.model.js
+++ b/server/api/jscriptyQuestionReport/jscriptyQuestionReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/jscriptyQuestionReport/jscriptyQuestionReport.rpc.js b/server/api/jscriptyQuestionReport/jscriptyQuestionReport.rpc.js
index 7027585..bdd75ee 100644
--- a/server/api/jscriptyQuestionReport/jscriptyQuestionReport.rpc.js
+++ b/server/api/jscriptyQuestionReport/jscriptyQuestionReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/jscriptySessionReport/index.js b/server/api/jscriptySessionReport/index.js
index ef80a46..a4aa4b0 100644
--- a/server/api/jscriptySessionReport/index.js
+++ b/server/api/jscriptySessionReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/jscriptySessionReport/jscriptySessionReport.attributes.js b/server/api/jscriptySessionReport/jscriptySessionReport.attributes.js
index 4048901..33e8524 100644
--- a/server/api/jscriptySessionReport/jscriptySessionReport.attributes.js
+++ b/server/api/jscriptySessionReport/jscriptySessionReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/jscriptySessionReport/jscriptySessionReport.controller.js b/server/api/jscriptySessionReport/jscriptySessionReport.controller.js
index 372cf96..bc677d8 100644
--- a/server/api/jscriptySessionReport/jscriptySessionReport.controller.js
+++ b/server/api/jscriptySessionReport/jscriptySessionReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/jscriptySessionReport/jscriptySessionReport.model.js b/server/api/jscriptySessionReport/jscriptySessionReport.model.js
index 3aa971d..286e07c 100644
--- a/server/api/jscriptySessionReport/jscriptySessionReport.model.js
+++ b/server/api/jscriptySessionReport/jscriptySessionReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/jscriptySessionReport/jscriptySessionReport.rpc.js b/server/api/jscriptySessionReport/jscriptySessionReport.rpc.js
index 2a618e6..e611bd9 100644
--- a/server/api/jscriptySessionReport/jscriptySessionReport.rpc.js
+++ b/server/api/jscriptySessionReport/jscriptySessionReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/license/index.js b/server/api/license/index.js
index 34e3b46..18f2692 100644
--- a/server/api/license/index.js
+++ b/server/api/license/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/license/license.attributes.js b/server/api/license/license.attributes.js
index 8ce0582..ebf3994 100644
--- a/server/api/license/license.attributes.js
+++ b/server/api/license/license.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/license/license.controller.js b/server/api/license/license.controller.js
index 5ffb57d..a738a34 100644
--- a/server/api/license/license.controller.js
+++ b/server/api/license/license.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/license/license.model.js b/server/api/license/license.model.js
index 96aa0ba..184843a 100644
--- a/server/api/license/license.model.js
+++ b/server/api/license/license.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/license/license.rpc.js b/server/api/license/license.rpc.js
index a076028..c89b43e 100644
--- a/server/api/license/license.rpc.js
+++ b/server/api/license/license.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailAccount/index.js b/server/api/mailAccount/index.js
index a561245..02bfd3a 100644
--- a/server/api/mailAccount/index.js
+++ b/server/api/mailAccount/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailAccount/mailAccount.attributes.js b/server/api/mailAccount/mailAccount.attributes.js
index 0d2d2e1..79cd1ee 100644
--- a/server/api/mailAccount/mailAccount.attributes.js
+++ b/server/api/mailAccount/mailAccount.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailAccount/mailAccount.controller.js b/server/api/mailAccount/mailAccount.controller.js
index 605e093..e652236 100644
--- a/server/api/mailAccount/mailAccount.controller.js
+++ b/server/api/mailAccount/mailAccount.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailAccount/mailAccount.events.js b/server/api/mailAccount/mailAccount.events.js
index 5998755..1c0c259 100644
--- a/server/api/mailAccount/mailAccount.events.js
+++ b/server/api/mailAccount/mailAccount.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailAccount/mailAccount.model.js b/server/api/mailAccount/mailAccount.model.js
index 50d58e2..a901d33 100644
--- a/server/api/mailAccount/mailAccount.model.js
+++ b/server/api/mailAccount/mailAccount.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailAccount/mailAccount.rpc.js b/server/api/mailAccount/mailAccount.rpc.js
index 5c471d0..14e2950 100644
--- a/server/api/mailAccount/mailAccount.rpc.js
+++ b/server/api/mailAccount/mailAccount.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailAccount/mailAccount.socket.js b/server/api/mailAccount/mailAccount.socket.js
index be31aa0..bc8faab 100644
--- a/server/api/mailAccount/mailAccount.socket.js
+++ b/server/api/mailAccount/mailAccount.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailApplication/index.js b/server/api/mailApplication/index.js
index bb88788..a7e3374 100644
--- a/server/api/mailApplication/index.js
+++ b/server/api/mailApplication/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailApplication/mailApplication.attributes.js b/server/api/mailApplication/mailApplication.attributes.js
index 30309f3..c4d351d 100644
--- a/server/api/mailApplication/mailApplication.attributes.js
+++ b/server/api/mailApplication/mailApplication.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailApplication/mailApplication.controller.js b/server/api/mailApplication/mailApplication.controller.js
index e77ed30..a8efd30 100644
--- a/server/api/mailApplication/mailApplication.controller.js
+++ b/server/api/mailApplication/mailApplication.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailApplication/mailApplication.model.js b/server/api/mailApplication/mailApplication.model.js
index ac4b8ab..34677b2 100644
--- a/server/api/mailApplication/mailApplication.model.js
+++ b/server/api/mailApplication/mailApplication.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailApplication/mailApplication.rpc.js b/server/api/mailApplication/mailApplication.rpc.js
index cb61ce5..c5f88a3 100644
--- a/server/api/mailApplication/mailApplication.rpc.js
+++ b/server/api/mailApplication/mailApplication.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailInteraction/index.js b/server/api/mailInteraction/index.js
index f6aa3df..459c768 100644
--- a/server/api/mailInteraction/index.js
+++ b/server/api/mailInteraction/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailInteraction/mailInteraction.attributes.js b/server/api/mailInteraction/mailInteraction.attributes.js
index 2d3f17e..37faba0 100644
--- a/server/api/mailInteraction/mailInteraction.attributes.js
+++ b/server/api/mailInteraction/mailInteraction.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailInteraction/mailInteraction.controller.js b/server/api/mailInteraction/mailInteraction.controller.js
index 4b6139b..8bd838e 100644
--- a/server/api/mailInteraction/mailInteraction.controller.js
+++ b/server/api/mailInteraction/mailInteraction.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailInteraction/mailInteraction.events.js b/server/api/mailInteraction/mailInteraction.events.js
index fba70ba..4907fe9 100644
--- a/server/api/mailInteraction/mailInteraction.events.js
+++ b/server/api/mailInteraction/mailInteraction.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailInteraction/mailInteraction.model.js b/server/api/mailInteraction/mailInteraction.model.js
index 7946048..3ff045e 100644
--- a/server/api/mailInteraction/mailInteraction.model.js
+++ b/server/api/mailInteraction/mailInteraction.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailInteraction/mailInteraction.rpc.js b/server/api/mailInteraction/mailInteraction.rpc.js
index 92712c4..60aabaf 100644
--- a/server/api/mailInteraction/mailInteraction.rpc.js
+++ b/server/api/mailInteraction/mailInteraction.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailInteraction/mailInteraction.socket.js b/server/api/mailInteraction/mailInteraction.socket.js
index 71f023a..25ff05c 100644
--- a/server/api/mailInteraction/mailInteraction.socket.js
+++ b/server/api/mailInteraction/mailInteraction.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailMessage/index.js b/server/api/mailMessage/index.js
index ddeda23..8d43cb3 100644
--- a/server/api/mailMessage/index.js
+++ b/server/api/mailMessage/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailMessage/mailMessage.attributes.js b/server/api/mailMessage/mailMessage.attributes.js
index 0925fb5..6c1cfff 100644
--- a/server/api/mailMessage/mailMessage.attributes.js
+++ b/server/api/mailMessage/mailMessage.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailMessage/mailMessage.controller.js b/server/api/mailMessage/mailMessage.controller.js
index eceac7d..05fca02 100644
--- a/server/api/mailMessage/mailMessage.controller.js
+++ b/server/api/mailMessage/mailMessage.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailMessage/mailMessage.events.js b/server/api/mailMessage/mailMessage.events.js
index b4727eb..cfe4f50 100644
--- a/server/api/mailMessage/mailMessage.events.js
+++ b/server/api/mailMessage/mailMessage.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailMessage/mailMessage.model.js b/server/api/mailMessage/mailMessage.model.js
index ae822f7..cdb2317 100644
--- a/server/api/mailMessage/mailMessage.model.js
+++ b/server/api/mailMessage/mailMessage.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailMessage/mailMessage.rpc.js b/server/api/mailMessage/mailMessage.rpc.js
index 9b1c7cc..e5a4385 100644
--- a/server/api/mailMessage/mailMessage.rpc.js
+++ b/server/api/mailMessage/mailMessage.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailMessage/mailMessage.socket.js b/server/api/mailMessage/mailMessage.socket.js
index ac66178..3e0567a 100644
--- a/server/api/mailMessage/mailMessage.socket.js
+++ b/server/api/mailMessage/mailMessage.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailQueue/index.js b/server/api/mailQueue/index.js
index d876240..7350489 100644
--- a/server/api/mailQueue/index.js
+++ b/server/api/mailQueue/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailQueue/mailQueue.attributes.js b/server/api/mailQueue/mailQueue.attributes.js
index 45f2102..629c158 100644
--- a/server/api/mailQueue/mailQueue.attributes.js
+++ b/server/api/mailQueue/mailQueue.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailQueue/mailQueue.controller.js b/server/api/mailQueue/mailQueue.controller.js
index 59f2e16..edf22ec 100644
--- a/server/api/mailQueue/mailQueue.controller.js
+++ b/server/api/mailQueue/mailQueue.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailQueue/mailQueue.events.js b/server/api/mailQueue/mailQueue.events.js
index 53fb8ab..a523c5d 100644
--- a/server/api/mailQueue/mailQueue.events.js
+++ b/server/api/mailQueue/mailQueue.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailQueue/mailQueue.model.js b/server/api/mailQueue/mailQueue.model.js
index 25679e0..ef6eb3f 100644
--- a/server/api/mailQueue/mailQueue.model.js
+++ b/server/api/mailQueue/mailQueue.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailQueue/mailQueue.rpc.js b/server/api/mailQueue/mailQueue.rpc.js
index 9eb2191..25b5505 100644
--- a/server/api/mailQueue/mailQueue.rpc.js
+++ b/server/api/mailQueue/mailQueue.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailQueue/mailQueue.socket.js b/server/api/mailQueue/mailQueue.socket.js
index ef585fa..ecc889d 100644
--- a/server/api/mailQueue/mailQueue.socket.js
+++ b/server/api/mailQueue/mailQueue.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailQueueReport/index.js b/server/api/mailQueueReport/index.js
index f6a96e5..21b56bf 100644
--- a/server/api/mailQueueReport/index.js
+++ b/server/api/mailQueueReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailQueueReport/mailQueueReport.attributes.js b/server/api/mailQueueReport/mailQueueReport.attributes.js
index b8a67fe..78f0c07 100644
--- a/server/api/mailQueueReport/mailQueueReport.attributes.js
+++ b/server/api/mailQueueReport/mailQueueReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailQueueReport/mailQueueReport.controller.js b/server/api/mailQueueReport/mailQueueReport.controller.js
index b7482b5..cbc391e 100644
--- a/server/api/mailQueueReport/mailQueueReport.controller.js
+++ b/server/api/mailQueueReport/mailQueueReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailQueueReport/mailQueueReport.model.js b/server/api/mailQueueReport/mailQueueReport.model.js
index a2ba1ea..336710c 100644
--- a/server/api/mailQueueReport/mailQueueReport.model.js
+++ b/server/api/mailQueueReport/mailQueueReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailQueueReport/mailQueueReport.rpc.js b/server/api/mailQueueReport/mailQueueReport.rpc.js
index fbfd380..a4a622b 100644
--- a/server/api/mailQueueReport/mailQueueReport.rpc.js
+++ b/server/api/mailQueueReport/mailQueueReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailServerIn/index.js b/server/api/mailServerIn/index.js
index fcb8420..373c36c 100644
--- a/server/api/mailServerIn/index.js
+++ b/server/api/mailServerIn/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailServerIn/mailServerIn.attributes.js b/server/api/mailServerIn/mailServerIn.attributes.js
index 24b0d42..a6c0712 100644
--- a/server/api/mailServerIn/mailServerIn.attributes.js
+++ b/server/api/mailServerIn/mailServerIn.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailServerIn/mailServerIn.model.js b/server/api/mailServerIn/mailServerIn.model.js
index 8c6e046..03f5b67 100644
--- a/server/api/mailServerIn/mailServerIn.model.js
+++ b/server/api/mailServerIn/mailServerIn.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailServerIn/mailServerIn.rpc.js b/server/api/mailServerIn/mailServerIn.rpc.js
index 4c3a96f..039d1ed 100644
--- a/server/api/mailServerIn/mailServerIn.rpc.js
+++ b/server/api/mailServerIn/mailServerIn.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailServerOut/index.js b/server/api/mailServerOut/index.js
index 22ee433..29ba96a 100644
--- a/server/api/mailServerOut/index.js
+++ b/server/api/mailServerOut/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailServerOut/mailServerOut.attributes.js b/server/api/mailServerOut/mailServerOut.attributes.js
index 1608d53..e5aa618 100644
--- a/server/api/mailServerOut/mailServerOut.attributes.js
+++ b/server/api/mailServerOut/mailServerOut.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailServerOut/mailServerOut.controller.js b/server/api/mailServerOut/mailServerOut.controller.js
index b205be8..178d093 100644
--- a/server/api/mailServerOut/mailServerOut.controller.js
+++ b/server/api/mailServerOut/mailServerOut.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailServerOut/mailServerOut.model.js b/server/api/mailServerOut/mailServerOut.model.js
index 155d3fc..8432554 100644
--- a/server/api/mailServerOut/mailServerOut.model.js
+++ b/server/api/mailServerOut/mailServerOut.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailServerOut/mailServerOut.rpc.js b/server/api/mailServerOut/mailServerOut.rpc.js
index ccdf2ba..fcb379b 100644
--- a/server/api/mailServerOut/mailServerOut.rpc.js
+++ b/server/api/mailServerOut/mailServerOut.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailSubstatus/index.js b/server/api/mailSubstatus/index.js
index 850875f..e0ec9a3 100644
--- a/server/api/mailSubstatus/index.js
+++ b/server/api/mailSubstatus/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailSubstatus/mailSubstatus.attributes.js b/server/api/mailSubstatus/mailSubstatus.attributes.js
index 9d50382..79034f3 100644
--- a/server/api/mailSubstatus/mailSubstatus.attributes.js
+++ b/server/api/mailSubstatus/mailSubstatus.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailSubstatus/mailSubstatus.controller.js b/server/api/mailSubstatus/mailSubstatus.controller.js
index 7d5459b..0a6b1ad 100644
--- a/server/api/mailSubstatus/mailSubstatus.controller.js
+++ b/server/api/mailSubstatus/mailSubstatus.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailSubstatus/mailSubstatus.model.js b/server/api/mailSubstatus/mailSubstatus.model.js
index ad3da2a..29dc56a 100644
--- a/server/api/mailSubstatus/mailSubstatus.model.js
+++ b/server/api/mailSubstatus/mailSubstatus.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailSubstatus/mailSubstatus.rpc.js b/server/api/mailSubstatus/mailSubstatus.rpc.js
index 060d0ce..1a069d8 100644
--- a/server/api/mailSubstatus/mailSubstatus.rpc.js
+++ b/server/api/mailSubstatus/mailSubstatus.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailTransferReport/index.js b/server/api/mailTransferReport/index.js
index 7f03212..be0b73f 100644
--- a/server/api/mailTransferReport/index.js
+++ b/server/api/mailTransferReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailTransferReport/mailTransferReport.attributes.js b/server/api/mailTransferReport/mailTransferReport.attributes.js
index 9e2af7f..71973ec 100644
--- a/server/api/mailTransferReport/mailTransferReport.attributes.js
+++ b/server/api/mailTransferReport/mailTransferReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailTransferReport/mailTransferReport.controller.js b/server/api/mailTransferReport/mailTransferReport.controller.js
index a9ecaa4..aaeb875 100644
--- a/server/api/mailTransferReport/mailTransferReport.controller.js
+++ b/server/api/mailTransferReport/mailTransferReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailTransferReport/mailTransferReport.model.js b/server/api/mailTransferReport/mailTransferReport.model.js
index 5cd8a14..55e3ef1 100644
--- a/server/api/mailTransferReport/mailTransferReport.model.js
+++ b/server/api/mailTransferReport/mailTransferReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/mailTransferReport/mailTransferReport.rpc.js b/server/api/mailTransferReport/mailTransferReport.rpc.js
index 2e6601a..0858377 100644
--- a/server/api/mailTransferReport/mailTransferReport.rpc.js
+++ b/server/api/mailTransferReport/mailTransferReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/memberReport/index.js b/server/api/memberReport/index.js
index a30c888..edde9bf 100644
--- a/server/api/memberReport/index.js
+++ b/server/api/memberReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/memberReport/memberReport.attributes.js b/server/api/memberReport/memberReport.attributes.js
index c850bde..6541def 100644
--- a/server/api/memberReport/memberReport.attributes.js
+++ b/server/api/memberReport/memberReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/memberReport/memberReport.controller.js b/server/api/memberReport/memberReport.controller.js
index a9d9816..103c44d 100644
--- a/server/api/memberReport/memberReport.controller.js
+++ b/server/api/memberReport/memberReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/memberReport/memberReport.model.js b/server/api/memberReport/memberReport.model.js
index f83320b..db41eb6 100644
--- a/server/api/memberReport/memberReport.model.js
+++ b/server/api/memberReport/memberReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/memberReport/memberReport.rpc.js b/server/api/memberReport/memberReport.rpc.js
index ddcbf56..e89216d 100644
--- a/server/api/memberReport/memberReport.rpc.js
+++ b/server/api/memberReport/memberReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/migration/index.js b/server/api/migration/index.js
index 09b5c74..245a618 100644
--- a/server/api/migration/index.js
+++ b/server/api/migration/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/migration/migration.attributes.js b/server/api/migration/migration.attributes.js
index e7738ba..4aa6ec1 100644
--- a/server/api/migration/migration.attributes.js
+++ b/server/api/migration/migration.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
-var _0xdb27=['version','sequelize','exports','STRING'];(function(_0xacb1e2,_0x55e0ab){var _0x463815=function(_0x413c3b){while(--_0x413c3b){_0xacb1e2['push'](_0xacb1e2['shift']());}};_0x463815(++_0x55e0ab);}(_0xdb27,0xbd));var _0x7db2=function(_0x363404,_0x5d39c3){_0x363404=_0x363404-0x0;var _0x47dcc2=_0xdb27[_0x363404];return _0x47dcc2;};'use strict';var Sequelize=require(_0x7db2('0x0'));module[_0x7db2('0x1')]={'version':{'type':Sequelize[_0x7db2('0x2')],'unique':_0x7db2('0x3')}};
\ No newline at end of file
+var _0x3a57=['exports','STRING'];(function(_0x4cfc1d,_0x2c0927){var _0x1c01a0=function(_0x264a74){while(--_0x264a74){_0x4cfc1d['push'](_0x4cfc1d['shift']());}};_0x1c01a0(++_0x2c0927);}(_0x3a57,0xc8));var _0x73a5=function(_0x474900,_0x486253){_0x474900=_0x474900-0x0;var _0x2f3093=_0x3a57[_0x474900];return _0x2f3093;};'use strict';var Sequelize=require('sequelize');module[_0x73a5('0x0')]={'version':{'type':Sequelize[_0x73a5('0x1')],'unique':'version'}};
\ No newline at end of file
diff --git a/server/api/migration/migration.controller.js b/server/api/migration/migration.controller.js
index 422a8df..6183116 100644
--- a/server/api/migration/migration.controller.js
+++ b/server/api/migration/migration.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/migration/migration.model.js b/server/api/migration/migration.model.js
index b08bc96..acea327 100644
--- a/server/api/migration/migration.model.js
+++ b/server/api/migration/migration.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/migration/migration.rpc.js b/server/api/migration/migration.rpc.js
index c288aac..51a02bc 100644
--- a/server/api/migration/migration.rpc.js
+++ b/server/api/migration/migration.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/network/index.js b/server/api/network/index.js
index 5f09a37..d6964d4 100644
--- a/server/api/network/index.js
+++ b/server/api/network/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/network/network.attributes.js b/server/api/network/network.attributes.js
index 6292e21..049c0ee 100644
--- a/server/api/network/network.attributes.js
+++ b/server/api/network/network.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/network/network.controller.js b/server/api/network/network.controller.js
index 15462ba..e29b409 100644
--- a/server/api/network/network.controller.js
+++ b/server/api/network/network.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/network/network.model.js b/server/api/network/network.model.js
index 37468b5..d854c75 100644
--- a/server/api/network/network.model.js
+++ b/server/api/network/network.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/network/network.rpc.js b/server/api/network/network.rpc.js
index 3344957..e2a0868 100644
--- a/server/api/network/network.rpc.js
+++ b/server/api/network/network.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/notification/index.js b/server/api/notification/index.js
index 39d5f2b..08b477b 100644
--- a/server/api/notification/index.js
+++ b/server/api/notification/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/notification/notification.attributes.js b/server/api/notification/notification.attributes.js
index ab15cfc..f2916f9 100644
--- a/server/api/notification/notification.attributes.js
+++ b/server/api/notification/notification.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/notification/notification.controller.js b/server/api/notification/notification.controller.js
index 1b739a7..aa9987c 100644
--- a/server/api/notification/notification.controller.js
+++ b/server/api/notification/notification.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/notification/notification.events.js b/server/api/notification/notification.events.js
index c33546d..eff62d4 100644
--- a/server/api/notification/notification.events.js
+++ b/server/api/notification/notification.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/notification/notification.model.js b/server/api/notification/notification.model.js
index 37c664e..0efce92 100644
--- a/server/api/notification/notification.model.js
+++ b/server/api/notification/notification.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/notification/notification.rpc.js b/server/api/notification/notification.rpc.js
index 1fc553f..e2ab439 100644
--- a/server/api/notification/notification.rpc.js
+++ b/server/api/notification/notification.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/notification/notification.socket.js b/server/api/notification/notification.socket.js
index a9bd684..651b4b7 100644
--- a/server/api/notification/notification.socket.js
+++ b/server/api/notification/notification.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelAccount/index.js b/server/api/openchannelAccount/index.js
index c59e39f..db7788e 100644
--- a/server/api/openchannelAccount/index.js
+++ b/server/api/openchannelAccount/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelAccount/openchannelAccount.attributes.js b/server/api/openchannelAccount/openchannelAccount.attributes.js
index 23a8f8a..1346773 100644
--- a/server/api/openchannelAccount/openchannelAccount.attributes.js
+++ b/server/api/openchannelAccount/openchannelAccount.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelAccount/openchannelAccount.controller.js b/server/api/openchannelAccount/openchannelAccount.controller.js
index da763da..e4be730 100644
--- a/server/api/openchannelAccount/openchannelAccount.controller.js
+++ b/server/api/openchannelAccount/openchannelAccount.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelAccount/openchannelAccount.events.js b/server/api/openchannelAccount/openchannelAccount.events.js
index fcac295..76e8464 100644
--- a/server/api/openchannelAccount/openchannelAccount.events.js
+++ b/server/api/openchannelAccount/openchannelAccount.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelAccount/openchannelAccount.model.js b/server/api/openchannelAccount/openchannelAccount.model.js
index 093e0cb..afea09c 100644
--- a/server/api/openchannelAccount/openchannelAccount.model.js
+++ b/server/api/openchannelAccount/openchannelAccount.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelAccount/openchannelAccount.rpc.js b/server/api/openchannelAccount/openchannelAccount.rpc.js
index 1d57742..dd35ceb 100644
--- a/server/api/openchannelAccount/openchannelAccount.rpc.js
+++ b/server/api/openchannelAccount/openchannelAccount.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelAccount/openchannelAccount.socket.js b/server/api/openchannelAccount/openchannelAccount.socket.js
index bd7e27b..dee0704 100644
--- a/server/api/openchannelAccount/openchannelAccount.socket.js
+++ b/server/api/openchannelAccount/openchannelAccount.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelApplication/index.js b/server/api/openchannelApplication/index.js
index 5cee378..4070e08 100644
--- a/server/api/openchannelApplication/index.js
+++ b/server/api/openchannelApplication/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelApplication/openchannelApplication.attributes.js b/server/api/openchannelApplication/openchannelApplication.attributes.js
index a7ae905..68b8307 100644
--- a/server/api/openchannelApplication/openchannelApplication.attributes.js
+++ b/server/api/openchannelApplication/openchannelApplication.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelApplication/openchannelApplication.controller.js b/server/api/openchannelApplication/openchannelApplication.controller.js
index e656db5..308da12 100644
--- a/server/api/openchannelApplication/openchannelApplication.controller.js
+++ b/server/api/openchannelApplication/openchannelApplication.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelApplication/openchannelApplication.model.js b/server/api/openchannelApplication/openchannelApplication.model.js
index 0a8333e..0c094f5 100644
--- a/server/api/openchannelApplication/openchannelApplication.model.js
+++ b/server/api/openchannelApplication/openchannelApplication.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelApplication/openchannelApplication.rpc.js b/server/api/openchannelApplication/openchannelApplication.rpc.js
index b2a744a..e6077eb 100644
--- a/server/api/openchannelApplication/openchannelApplication.rpc.js
+++ b/server/api/openchannelApplication/openchannelApplication.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelInteraction/index.js b/server/api/openchannelInteraction/index.js
index d4dc534..286e1a1 100644
--- a/server/api/openchannelInteraction/index.js
+++ b/server/api/openchannelInteraction/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelInteraction/openchannelInteraction.attributes.js b/server/api/openchannelInteraction/openchannelInteraction.attributes.js
index ab2f4b5..8c22057 100644
--- a/server/api/openchannelInteraction/openchannelInteraction.attributes.js
+++ b/server/api/openchannelInteraction/openchannelInteraction.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelInteraction/openchannelInteraction.controller.js b/server/api/openchannelInteraction/openchannelInteraction.controller.js
index 0500eba..cc04b80 100644
--- a/server/api/openchannelInteraction/openchannelInteraction.controller.js
+++ b/server/api/openchannelInteraction/openchannelInteraction.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelInteraction/openchannelInteraction.events.js b/server/api/openchannelInteraction/openchannelInteraction.events.js
index 98fb05a..915271c 100644
--- a/server/api/openchannelInteraction/openchannelInteraction.events.js
+++ b/server/api/openchannelInteraction/openchannelInteraction.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelInteraction/openchannelInteraction.model.js b/server/api/openchannelInteraction/openchannelInteraction.model.js
index 85eea84..e0136ce 100644
--- a/server/api/openchannelInteraction/openchannelInteraction.model.js
+++ b/server/api/openchannelInteraction/openchannelInteraction.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelInteraction/openchannelInteraction.rpc.js b/server/api/openchannelInteraction/openchannelInteraction.rpc.js
index f7ba067..8f8b706 100644
--- a/server/api/openchannelInteraction/openchannelInteraction.rpc.js
+++ b/server/api/openchannelInteraction/openchannelInteraction.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelInteraction/openchannelInteraction.socket.js b/server/api/openchannelInteraction/openchannelInteraction.socket.js
index 57b1df1..a9e68e8 100644
--- a/server/api/openchannelInteraction/openchannelInteraction.socket.js
+++ b/server/api/openchannelInteraction/openchannelInteraction.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelMessage/index.js b/server/api/openchannelMessage/index.js
index c5a0822..eeb96f2 100644
--- a/server/api/openchannelMessage/index.js
+++ b/server/api/openchannelMessage/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelMessage/openchannelMessage.attributes.js b/server/api/openchannelMessage/openchannelMessage.attributes.js
index 8ab8340..2fed29e 100644
--- a/server/api/openchannelMessage/openchannelMessage.attributes.js
+++ b/server/api/openchannelMessage/openchannelMessage.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelMessage/openchannelMessage.controller.js b/server/api/openchannelMessage/openchannelMessage.controller.js
index f50d17e..a8e1927 100644
--- a/server/api/openchannelMessage/openchannelMessage.controller.js
+++ b/server/api/openchannelMessage/openchannelMessage.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelMessage/openchannelMessage.events.js b/server/api/openchannelMessage/openchannelMessage.events.js
index 133551f..a201438 100644
--- a/server/api/openchannelMessage/openchannelMessage.events.js
+++ b/server/api/openchannelMessage/openchannelMessage.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelMessage/openchannelMessage.model.js b/server/api/openchannelMessage/openchannelMessage.model.js
index 1d5df89..392e077 100644
--- a/server/api/openchannelMessage/openchannelMessage.model.js
+++ b/server/api/openchannelMessage/openchannelMessage.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelMessage/openchannelMessage.rpc.js b/server/api/openchannelMessage/openchannelMessage.rpc.js
index 360779c..5fbbd05 100644
--- a/server/api/openchannelMessage/openchannelMessage.rpc.js
+++ b/server/api/openchannelMessage/openchannelMessage.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelMessage/openchannelMessage.socket.js b/server/api/openchannelMessage/openchannelMessage.socket.js
index 639f7de..e1f7557 100644
--- a/server/api/openchannelMessage/openchannelMessage.socket.js
+++ b/server/api/openchannelMessage/openchannelMessage.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelQueue/index.js b/server/api/openchannelQueue/index.js
index 393b133..1658f31 100644
--- a/server/api/openchannelQueue/index.js
+++ b/server/api/openchannelQueue/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelQueue/openchannelQueue.attributes.js b/server/api/openchannelQueue/openchannelQueue.attributes.js
index 95f05d4..a619e5c 100644
--- a/server/api/openchannelQueue/openchannelQueue.attributes.js
+++ b/server/api/openchannelQueue/openchannelQueue.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelQueue/openchannelQueue.controller.js b/server/api/openchannelQueue/openchannelQueue.controller.js
index 8bbf2b0..42dda75 100644
--- a/server/api/openchannelQueue/openchannelQueue.controller.js
+++ b/server/api/openchannelQueue/openchannelQueue.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelQueue/openchannelQueue.events.js b/server/api/openchannelQueue/openchannelQueue.events.js
index a507740..2035a63 100644
--- a/server/api/openchannelQueue/openchannelQueue.events.js
+++ b/server/api/openchannelQueue/openchannelQueue.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelQueue/openchannelQueue.model.js b/server/api/openchannelQueue/openchannelQueue.model.js
index c9789cd..ed762fe 100644
--- a/server/api/openchannelQueue/openchannelQueue.model.js
+++ b/server/api/openchannelQueue/openchannelQueue.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelQueue/openchannelQueue.rpc.js b/server/api/openchannelQueue/openchannelQueue.rpc.js
index 7cef8df..4436fb8 100644
--- a/server/api/openchannelQueue/openchannelQueue.rpc.js
+++ b/server/api/openchannelQueue/openchannelQueue.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelQueue/openchannelQueue.socket.js b/server/api/openchannelQueue/openchannelQueue.socket.js
index 84c1b84..6f158fa 100644
--- a/server/api/openchannelQueue/openchannelQueue.socket.js
+++ b/server/api/openchannelQueue/openchannelQueue.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelQueueReport/index.js b/server/api/openchannelQueueReport/index.js
index f95ac7c..0104033 100644
--- a/server/api/openchannelQueueReport/index.js
+++ b/server/api/openchannelQueueReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelQueueReport/openchannelQueueReport.attributes.js b/server/api/openchannelQueueReport/openchannelQueueReport.attributes.js
index 3b21de0..1361f1f 100644
--- a/server/api/openchannelQueueReport/openchannelQueueReport.attributes.js
+++ b/server/api/openchannelQueueReport/openchannelQueueReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelQueueReport/openchannelQueueReport.controller.js b/server/api/openchannelQueueReport/openchannelQueueReport.controller.js
index 85ea4b1..f6fd0a4 100644
--- a/server/api/openchannelQueueReport/openchannelQueueReport.controller.js
+++ b/server/api/openchannelQueueReport/openchannelQueueReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelQueueReport/openchannelQueueReport.model.js b/server/api/openchannelQueueReport/openchannelQueueReport.model.js
index 10b4719..676214c 100644
--- a/server/api/openchannelQueueReport/openchannelQueueReport.model.js
+++ b/server/api/openchannelQueueReport/openchannelQueueReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelQueueReport/openchannelQueueReport.rpc.js b/server/api/openchannelQueueReport/openchannelQueueReport.rpc.js
index db31178..9e1c3eb 100644
--- a/server/api/openchannelQueueReport/openchannelQueueReport.rpc.js
+++ b/server/api/openchannelQueueReport/openchannelQueueReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelTransferReport/index.js b/server/api/openchannelTransferReport/index.js
index 2275883..04761cc 100644
--- a/server/api/openchannelTransferReport/index.js
+++ b/server/api/openchannelTransferReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelTransferReport/openchannelTransferReport.attributes.js b/server/api/openchannelTransferReport/openchannelTransferReport.attributes.js
index c77cba7..32e04c3 100644
--- a/server/api/openchannelTransferReport/openchannelTransferReport.attributes.js
+++ b/server/api/openchannelTransferReport/openchannelTransferReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelTransferReport/openchannelTransferReport.controller.js b/server/api/openchannelTransferReport/openchannelTransferReport.controller.js
index a07df6b..3f7693f 100644
--- a/server/api/openchannelTransferReport/openchannelTransferReport.controller.js
+++ b/server/api/openchannelTransferReport/openchannelTransferReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelTransferReport/openchannelTransferReport.model.js b/server/api/openchannelTransferReport/openchannelTransferReport.model.js
index af63688..3081170 100644
--- a/server/api/openchannelTransferReport/openchannelTransferReport.model.js
+++ b/server/api/openchannelTransferReport/openchannelTransferReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/openchannelTransferReport/openchannelTransferReport.rpc.js b/server/api/openchannelTransferReport/openchannelTransferReport.rpc.js
index c7539db..42aee45 100644
--- a/server/api/openchannelTransferReport/openchannelTransferReport.rpc.js
+++ b/server/api/openchannelTransferReport/openchannelTransferReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/pause/index.js b/server/api/pause/index.js
index 0fa8405..5050e5e 100644
--- a/server/api/pause/index.js
+++ b/server/api/pause/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/pause/pause.attributes.js b/server/api/pause/pause.attributes.js
index 9a45968..c4a842e 100644
--- a/server/api/pause/pause.attributes.js
+++ b/server/api/pause/pause.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/pause/pause.controller.js b/server/api/pause/pause.controller.js
index 5fc151b..d88c3f8 100644
--- a/server/api/pause/pause.controller.js
+++ b/server/api/pause/pause.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/pause/pause.model.js b/server/api/pause/pause.model.js
index fa30964..4efb411 100644
--- a/server/api/pause/pause.model.js
+++ b/server/api/pause/pause.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/pause/pause.rpc.js b/server/api/pause/pause.rpc.js
index 6ab137c..855075c 100644
--- a/server/api/pause/pause.rpc.js
+++ b/server/api/pause/pause.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/plugin/index.js b/server/api/plugin/index.js
index 3a5d1c3..3ee25d6 100644
--- a/server/api/plugin/index.js
+++ b/server/api/plugin/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/plugin/plugin.attributes.js b/server/api/plugin/plugin.attributes.js
index 796c327..98d25b8 100644
--- a/server/api/plugin/plugin.attributes.js
+++ b/server/api/plugin/plugin.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/plugin/plugin.controller.js b/server/api/plugin/plugin.controller.js
index 1155a9d..f8dfbba 100644
--- a/server/api/plugin/plugin.controller.js
+++ b/server/api/plugin/plugin.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/plugin/plugin.events.js b/server/api/plugin/plugin.events.js
index 3493d11..4729fca 100644
--- a/server/api/plugin/plugin.events.js
+++ b/server/api/plugin/plugin.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/plugin/plugin.model.js b/server/api/plugin/plugin.model.js
index ceef665..35bc358 100644
--- a/server/api/plugin/plugin.model.js
+++ b/server/api/plugin/plugin.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/plugin/plugin.rpc.js b/server/api/plugin/plugin.rpc.js
index 18b28ad..2f0c49a 100644
--- a/server/api/plugin/plugin.rpc.js
+++ b/server/api/plugin/plugin.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/plugin/plugin.socket.js b/server/api/plugin/plugin.socket.js
index dbe0cfe..25ade4c 100644
--- a/server/api/plugin/plugin.socket.js
+++ b/server/api/plugin/plugin.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/pm2/index.js b/server/api/pm2/index.js
index e3d6c57..2cb2b94 100644
--- a/server/api/pm2/index.js
+++ b/server/api/pm2/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/pm2/pm2.controller.js b/server/api/pm2/pm2.controller.js
index 445be32..789a830 100644
--- a/server/api/pm2/pm2.controller.js
+++ b/server/api/pm2/pm2.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/reportAgentPreview/index.js b/server/api/reportAgentPreview/index.js
index b067c66..90e5b50 100644
--- a/server/api/reportAgentPreview/index.js
+++ b/server/api/reportAgentPreview/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/reportAgentPreview/reportAgentPreview.attributes.js b/server/api/reportAgentPreview/reportAgentPreview.attributes.js
index 86859cf..dadec5e 100644
--- a/server/api/reportAgentPreview/reportAgentPreview.attributes.js
+++ b/server/api/reportAgentPreview/reportAgentPreview.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/reportAgentPreview/reportAgentPreview.model.js b/server/api/reportAgentPreview/reportAgentPreview.model.js
index b1b8c20..9b12958 100644
--- a/server/api/reportAgentPreview/reportAgentPreview.model.js
+++ b/server/api/reportAgentPreview/reportAgentPreview.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/reportAgentPreview/reportAgentPreview.rpc.js b/server/api/reportAgentPreview/reportAgentPreview.rpc.js
index 1f7d310..2de0f5c 100644
--- a/server/api/reportAgentPreview/reportAgentPreview.rpc.js
+++ b/server/api/reportAgentPreview/reportAgentPreview.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/rpc/index.js b/server/api/rpc/index.js
index 7341e09..e62e8ec 100644
--- a/server/api/rpc/index.js
+++ b/server/api/rpc/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/rpc/rpc.controller.js b/server/api/rpc/rpc.controller.js
index 86ad300..668535b 100644
--- a/server/api/rpc/rpc.controller.js
+++ b/server/api/rpc/rpc.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/schedule/index.js b/server/api/schedule/index.js
index 1374868..3bd5d93 100644
--- a/server/api/schedule/index.js
+++ b/server/api/schedule/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/schedule/schedule.attributes.js b/server/api/schedule/schedule.attributes.js
index 5d912d6..cde4286 100644
--- a/server/api/schedule/schedule.attributes.js
+++ b/server/api/schedule/schedule.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/schedule/schedule.controller.js b/server/api/schedule/schedule.controller.js
index bb64b15..36cd869 100644
--- a/server/api/schedule/schedule.controller.js
+++ b/server/api/schedule/schedule.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/schedule/schedule.model.js b/server/api/schedule/schedule.model.js
index 7d77fda..4f1345d 100644
--- a/server/api/schedule/schedule.model.js
+++ b/server/api/schedule/schedule.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/schedule/schedule.rpc.js b/server/api/schedule/schedule.rpc.js
index c50a87c..5019efb 100644
--- a/server/api/schedule/schedule.rpc.js
+++ b/server/api/schedule/schedule.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/screenRecording/index.js b/server/api/screenRecording/index.js
index eb65738..c735b00 100644
--- a/server/api/screenRecording/index.js
+++ b/server/api/screenRecording/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/screenRecording/screenRecording.attributes.js b/server/api/screenRecording/screenRecording.attributes.js
index 3379e64..b59c9e0 100644
--- a/server/api/screenRecording/screenRecording.attributes.js
+++ b/server/api/screenRecording/screenRecording.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/screenRecording/screenRecording.controller.js b/server/api/screenRecording/screenRecording.controller.js
index 3129318..a7c95fa 100644
--- a/server/api/screenRecording/screenRecording.controller.js
+++ b/server/api/screenRecording/screenRecording.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/screenRecording/screenRecording.model.js b/server/api/screenRecording/screenRecording.model.js
index 33d6786..b82ba98 100644
--- a/server/api/screenRecording/screenRecording.model.js
+++ b/server/api/screenRecording/screenRecording.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/screenRecording/screenRecording.rpc.js b/server/api/screenRecording/screenRecording.rpc.js
index c706468..a497053 100644
--- a/server/api/screenRecording/screenRecording.rpc.js
+++ b/server/api/screenRecording/screenRecording.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/setting/index.js b/server/api/setting/index.js
index a32bcde..0c52a2c 100644
--- a/server/api/setting/index.js
+++ b/server/api/setting/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/setting/setting.attributes.js b/server/api/setting/setting.attributes.js
index 9cb69c0..b6edfa2 100644
--- a/server/api/setting/setting.attributes.js
+++ b/server/api/setting/setting.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/setting/setting.controller.js b/server/api/setting/setting.controller.js
index e7e8050..ab0bd2d 100644
--- a/server/api/setting/setting.controller.js
+++ b/server/api/setting/setting.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/setting/setting.model.js b/server/api/setting/setting.model.js
index 909da4f..43fb29f 100644
--- a/server/api/setting/setting.model.js
+++ b/server/api/setting/setting.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/setting/setting.rpc.js b/server/api/setting/setting.rpc.js
index 3a403a0..85e73ff 100644
--- a/server/api/setting/setting.rpc.js
+++ b/server/api/setting/setting.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsAccount/index.js b/server/api/smsAccount/index.js
index 4801da3..a1468d3 100644
--- a/server/api/smsAccount/index.js
+++ b/server/api/smsAccount/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsAccount/smsAccount.attributes.js b/server/api/smsAccount/smsAccount.attributes.js
index dd1ce2f..0f16f9b 100644
--- a/server/api/smsAccount/smsAccount.attributes.js
+++ b/server/api/smsAccount/smsAccount.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsAccount/smsAccount.controller.js b/server/api/smsAccount/smsAccount.controller.js
index 6cbded0..a02a07b 100644
--- a/server/api/smsAccount/smsAccount.controller.js
+++ b/server/api/smsAccount/smsAccount.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsAccount/smsAccount.events.js b/server/api/smsAccount/smsAccount.events.js
index 2e962f9..70ec9a7 100644
--- a/server/api/smsAccount/smsAccount.events.js
+++ b/server/api/smsAccount/smsAccount.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsAccount/smsAccount.model.js b/server/api/smsAccount/smsAccount.model.js
index 22178e3..aadae9d 100644
--- a/server/api/smsAccount/smsAccount.model.js
+++ b/server/api/smsAccount/smsAccount.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsAccount/smsAccount.rpc.js b/server/api/smsAccount/smsAccount.rpc.js
index 4abc410..98387db 100644
--- a/server/api/smsAccount/smsAccount.rpc.js
+++ b/server/api/smsAccount/smsAccount.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsAccount/smsAccount.socket.js b/server/api/smsAccount/smsAccount.socket.js
index ee49708..1caa958 100644
--- a/server/api/smsAccount/smsAccount.socket.js
+++ b/server/api/smsAccount/smsAccount.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsApplication/index.js b/server/api/smsApplication/index.js
index 752a254..bf104b4 100644
--- a/server/api/smsApplication/index.js
+++ b/server/api/smsApplication/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsApplication/smsApplication.attributes.js b/server/api/smsApplication/smsApplication.attributes.js
index e0c6ef4..f5df654 100644
--- a/server/api/smsApplication/smsApplication.attributes.js
+++ b/server/api/smsApplication/smsApplication.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsApplication/smsApplication.controller.js b/server/api/smsApplication/smsApplication.controller.js
index fd63024..2657cbd 100644
--- a/server/api/smsApplication/smsApplication.controller.js
+++ b/server/api/smsApplication/smsApplication.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsApplication/smsApplication.model.js b/server/api/smsApplication/smsApplication.model.js
index 5a5ae7f..3856846 100644
--- a/server/api/smsApplication/smsApplication.model.js
+++ b/server/api/smsApplication/smsApplication.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsApplication/smsApplication.rpc.js b/server/api/smsApplication/smsApplication.rpc.js
index f6c07e0..8c99943 100644
--- a/server/api/smsApplication/smsApplication.rpc.js
+++ b/server/api/smsApplication/smsApplication.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsInteraction/index.js b/server/api/smsInteraction/index.js
index f97ccf0..b0ce50d 100644
--- a/server/api/smsInteraction/index.js
+++ b/server/api/smsInteraction/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsInteraction/smsInteraction.attributes.js b/server/api/smsInteraction/smsInteraction.attributes.js
index a95e660..a45ccab 100644
--- a/server/api/smsInteraction/smsInteraction.attributes.js
+++ b/server/api/smsInteraction/smsInteraction.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsInteraction/smsInteraction.controller.js b/server/api/smsInteraction/smsInteraction.controller.js
index 7c79fa1..8e7a4a5 100644
--- a/server/api/smsInteraction/smsInteraction.controller.js
+++ b/server/api/smsInteraction/smsInteraction.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsInteraction/smsInteraction.events.js b/server/api/smsInteraction/smsInteraction.events.js
index d7b997e..476fe84 100644
--- a/server/api/smsInteraction/smsInteraction.events.js
+++ b/server/api/smsInteraction/smsInteraction.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsInteraction/smsInteraction.model.js b/server/api/smsInteraction/smsInteraction.model.js
index 564056a..b69b021 100644
--- a/server/api/smsInteraction/smsInteraction.model.js
+++ b/server/api/smsInteraction/smsInteraction.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsInteraction/smsInteraction.rpc.js b/server/api/smsInteraction/smsInteraction.rpc.js
index c34ffc6..740042f 100644
--- a/server/api/smsInteraction/smsInteraction.rpc.js
+++ b/server/api/smsInteraction/smsInteraction.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsInteraction/smsInteraction.socket.js b/server/api/smsInteraction/smsInteraction.socket.js
index 0d59c0f..6716d2b 100644
--- a/server/api/smsInteraction/smsInteraction.socket.js
+++ b/server/api/smsInteraction/smsInteraction.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsMessage/index.js b/server/api/smsMessage/index.js
index 8c84249..c135c4a 100644
--- a/server/api/smsMessage/index.js
+++ b/server/api/smsMessage/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsMessage/smsMessage.attributes.js b/server/api/smsMessage/smsMessage.attributes.js
index 7c11003..f3e34c5 100644
--- a/server/api/smsMessage/smsMessage.attributes.js
+++ b/server/api/smsMessage/smsMessage.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsMessage/smsMessage.controller.js b/server/api/smsMessage/smsMessage.controller.js
index dddf83c..43894eb 100644
--- a/server/api/smsMessage/smsMessage.controller.js
+++ b/server/api/smsMessage/smsMessage.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsMessage/smsMessage.events.js b/server/api/smsMessage/smsMessage.events.js
index 562d21b..68731e3 100644
--- a/server/api/smsMessage/smsMessage.events.js
+++ b/server/api/smsMessage/smsMessage.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsMessage/smsMessage.model.js b/server/api/smsMessage/smsMessage.model.js
index dbfee26..5e492a2 100644
--- a/server/api/smsMessage/smsMessage.model.js
+++ b/server/api/smsMessage/smsMessage.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsMessage/smsMessage.rpc.js b/server/api/smsMessage/smsMessage.rpc.js
index dd0e36b..7601337 100644
--- a/server/api/smsMessage/smsMessage.rpc.js
+++ b/server/api/smsMessage/smsMessage.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsMessage/smsMessage.socket.js b/server/api/smsMessage/smsMessage.socket.js
index 213a8b3..995a341 100644
--- a/server/api/smsMessage/smsMessage.socket.js
+++ b/server/api/smsMessage/smsMessage.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsQueue/index.js b/server/api/smsQueue/index.js
index 10cc651..a5649aa 100644
--- a/server/api/smsQueue/index.js
+++ b/server/api/smsQueue/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsQueue/smsQueue.attributes.js b/server/api/smsQueue/smsQueue.attributes.js
index 9610581..fd84aca 100644
--- a/server/api/smsQueue/smsQueue.attributes.js
+++ b/server/api/smsQueue/smsQueue.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsQueue/smsQueue.controller.js b/server/api/smsQueue/smsQueue.controller.js
index 3725576..36fac31 100644
--- a/server/api/smsQueue/smsQueue.controller.js
+++ b/server/api/smsQueue/smsQueue.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsQueue/smsQueue.events.js b/server/api/smsQueue/smsQueue.events.js
index 17331b7..86d7649 100644
--- a/server/api/smsQueue/smsQueue.events.js
+++ b/server/api/smsQueue/smsQueue.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsQueue/smsQueue.model.js b/server/api/smsQueue/smsQueue.model.js
index b6d4f9e..5957dc2 100644
--- a/server/api/smsQueue/smsQueue.model.js
+++ b/server/api/smsQueue/smsQueue.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsQueue/smsQueue.rpc.js b/server/api/smsQueue/smsQueue.rpc.js
index 2dcc9fd..aee7503 100644
--- a/server/api/smsQueue/smsQueue.rpc.js
+++ b/server/api/smsQueue/smsQueue.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsQueue/smsQueue.socket.js b/server/api/smsQueue/smsQueue.socket.js
index b81a83c..5d72dce 100644
--- a/server/api/smsQueue/smsQueue.socket.js
+++ b/server/api/smsQueue/smsQueue.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsQueueReport/index.js b/server/api/smsQueueReport/index.js
index 6636805..d94ca0e 100644
--- a/server/api/smsQueueReport/index.js
+++ b/server/api/smsQueueReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsQueueReport/smsQueueReport.attributes.js b/server/api/smsQueueReport/smsQueueReport.attributes.js
index f4908ca..6ddd633 100644
--- a/server/api/smsQueueReport/smsQueueReport.attributes.js
+++ b/server/api/smsQueueReport/smsQueueReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsQueueReport/smsQueueReport.controller.js b/server/api/smsQueueReport/smsQueueReport.controller.js
index fa357f3..21bd67f 100644
--- a/server/api/smsQueueReport/smsQueueReport.controller.js
+++ b/server/api/smsQueueReport/smsQueueReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsQueueReport/smsQueueReport.model.js b/server/api/smsQueueReport/smsQueueReport.model.js
index 9c67c42..fef9e12 100644
--- a/server/api/smsQueueReport/smsQueueReport.model.js
+++ b/server/api/smsQueueReport/smsQueueReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsQueueReport/smsQueueReport.rpc.js b/server/api/smsQueueReport/smsQueueReport.rpc.js
index 7b35231..b7a5a59 100644
--- a/server/api/smsQueueReport/smsQueueReport.rpc.js
+++ b/server/api/smsQueueReport/smsQueueReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsTransferReport/index.js b/server/api/smsTransferReport/index.js
index 1e62390..24a3196 100644
--- a/server/api/smsTransferReport/index.js
+++ b/server/api/smsTransferReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsTransferReport/smsTransferReport.attributes.js b/server/api/smsTransferReport/smsTransferReport.attributes.js
index 2a71e60..890efb0 100644
--- a/server/api/smsTransferReport/smsTransferReport.attributes.js
+++ b/server/api/smsTransferReport/smsTransferReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsTransferReport/smsTransferReport.controller.js b/server/api/smsTransferReport/smsTransferReport.controller.js
index 183e694..fe0ba46 100644
--- a/server/api/smsTransferReport/smsTransferReport.controller.js
+++ b/server/api/smsTransferReport/smsTransferReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsTransferReport/smsTransferReport.model.js b/server/api/smsTransferReport/smsTransferReport.model.js
index aec4467..a33931a 100644
--- a/server/api/smsTransferReport/smsTransferReport.model.js
+++ b/server/api/smsTransferReport/smsTransferReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/smsTransferReport/smsTransferReport.rpc.js b/server/api/smsTransferReport/smsTransferReport.rpc.js
index 8fbdafe..3b7474b 100644
--- a/server/api/smsTransferReport/smsTransferReport.rpc.js
+++ b/server/api/smsTransferReport/smsTransferReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/sound/index.js b/server/api/sound/index.js
index f588348..e0e78d0 100644
--- a/server/api/sound/index.js
+++ b/server/api/sound/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/sound/sound.attributes.js b/server/api/sound/sound.attributes.js
index 7ab092c..ae463c5 100644
--- a/server/api/sound/sound.attributes.js
+++ b/server/api/sound/sound.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/sound/sound.controller.js b/server/api/sound/sound.controller.js
index 3e9ceb5..e3fe1dc 100644
--- a/server/api/sound/sound.controller.js
+++ b/server/api/sound/sound.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/sound/sound.model.js b/server/api/sound/sound.model.js
index 950f69e..cc70a22 100644
--- a/server/api/sound/sound.model.js
+++ b/server/api/sound/sound.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/sound/sound.rpc.js b/server/api/sound/sound.rpc.js
index 68c797a..cc86db8 100644
--- a/server/api/sound/sound.rpc.js
+++ b/server/api/sound/sound.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareMessage/index.js b/server/api/squareMessage/index.js
index 45f291b..d22cd3c 100644
--- a/server/api/squareMessage/index.js
+++ b/server/api/squareMessage/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareMessage/squareMessage.attributes.js b/server/api/squareMessage/squareMessage.attributes.js
index 8c11f5d..44d959d 100644
--- a/server/api/squareMessage/squareMessage.attributes.js
+++ b/server/api/squareMessage/squareMessage.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareMessage/squareMessage.controller.js b/server/api/squareMessage/squareMessage.controller.js
index 5555618..5b1486c 100644
--- a/server/api/squareMessage/squareMessage.controller.js
+++ b/server/api/squareMessage/squareMessage.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareMessage/squareMessage.model.js b/server/api/squareMessage/squareMessage.model.js
index aef4f3e..e771d37 100644
--- a/server/api/squareMessage/squareMessage.model.js
+++ b/server/api/squareMessage/squareMessage.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareMessage/squareMessage.rpc.js b/server/api/squareMessage/squareMessage.rpc.js
index 2609d75..00c6132 100644
--- a/server/api/squareMessage/squareMessage.rpc.js
+++ b/server/api/squareMessage/squareMessage.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareOdbc/index.js b/server/api/squareOdbc/index.js
index 06adbd8..0a3593f 100644
--- a/server/api/squareOdbc/index.js
+++ b/server/api/squareOdbc/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareOdbc/squareOdbc.attributes.js b/server/api/squareOdbc/squareOdbc.attributes.js
index 79018df..4587742 100644
--- a/server/api/squareOdbc/squareOdbc.attributes.js
+++ b/server/api/squareOdbc/squareOdbc.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareOdbc/squareOdbc.controller.js b/server/api/squareOdbc/squareOdbc.controller.js
index fe64412..5f8d0fd 100644
--- a/server/api/squareOdbc/squareOdbc.controller.js
+++ b/server/api/squareOdbc/squareOdbc.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareOdbc/squareOdbc.model.js b/server/api/squareOdbc/squareOdbc.model.js
index d32fb05..9b59ac0 100644
--- a/server/api/squareOdbc/squareOdbc.model.js
+++ b/server/api/squareOdbc/squareOdbc.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareOdbc/squareOdbc.rpc.js b/server/api/squareOdbc/squareOdbc.rpc.js
index 5272ed8..5528498 100644
--- a/server/api/squareOdbc/squareOdbc.rpc.js
+++ b/server/api/squareOdbc/squareOdbc.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareProject/index.js b/server/api/squareProject/index.js
index 219cab4..f2fc268 100644
--- a/server/api/squareProject/index.js
+++ b/server/api/squareProject/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareProject/squareProject.attributes.js b/server/api/squareProject/squareProject.attributes.js
index 1190247..d8b2c9a 100644
--- a/server/api/squareProject/squareProject.attributes.js
+++ b/server/api/squareProject/squareProject.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareProject/squareProject.controller.js b/server/api/squareProject/squareProject.controller.js
index d19e78e..821d3fb 100644
--- a/server/api/squareProject/squareProject.controller.js
+++ b/server/api/squareProject/squareProject.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareProject/squareProject.events.js b/server/api/squareProject/squareProject.events.js
index 48c495f..c6ad4a4 100644
--- a/server/api/squareProject/squareProject.events.js
+++ b/server/api/squareProject/squareProject.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareProject/squareProject.model.js b/server/api/squareProject/squareProject.model.js
index 0a2aea7..0ce0f48 100644
--- a/server/api/squareProject/squareProject.model.js
+++ b/server/api/squareProject/squareProject.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareProject/squareProject.rpc.js b/server/api/squareProject/squareProject.rpc.js
index 39d7c4c..bcb770d 100644
--- a/server/api/squareProject/squareProject.rpc.js
+++ b/server/api/squareProject/squareProject.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareProject/squareProject.socket.js b/server/api/squareProject/squareProject.socket.js
index f41ec92..373e71b 100644
--- a/server/api/squareProject/squareProject.socket.js
+++ b/server/api/squareProject/squareProject.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareRecording/index.js b/server/api/squareRecording/index.js
index ca8b069..cb6aa50 100644
--- a/server/api/squareRecording/index.js
+++ b/server/api/squareRecording/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareRecording/squareRecording.attributes.js b/server/api/squareRecording/squareRecording.attributes.js
index 88f7c9d..4886e62 100644
--- a/server/api/squareRecording/squareRecording.attributes.js
+++ b/server/api/squareRecording/squareRecording.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareRecording/squareRecording.controller.js b/server/api/squareRecording/squareRecording.controller.js
index 6f60b6b..5982876 100644
--- a/server/api/squareRecording/squareRecording.controller.js
+++ b/server/api/squareRecording/squareRecording.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareRecording/squareRecording.model.js b/server/api/squareRecording/squareRecording.model.js
index e30cca4..43f3464 100644
--- a/server/api/squareRecording/squareRecording.model.js
+++ b/server/api/squareRecording/squareRecording.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareRecording/squareRecording.rpc.js b/server/api/squareRecording/squareRecording.rpc.js
index 1b20ac8..cad60e0 100644
--- a/server/api/squareRecording/squareRecording.rpc.js
+++ b/server/api/squareRecording/squareRecording.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareReport/index.js b/server/api/squareReport/index.js
index d70d97d..8d7bca9 100644
--- a/server/api/squareReport/index.js
+++ b/server/api/squareReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareReport/squareReport.attributes.js b/server/api/squareReport/squareReport.attributes.js
index d94b4c5..9a32143 100644
--- a/server/api/squareReport/squareReport.attributes.js
+++ b/server/api/squareReport/squareReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareReport/squareReport.controller.js b/server/api/squareReport/squareReport.controller.js
index 96db86b..c436754 100644
--- a/server/api/squareReport/squareReport.controller.js
+++ b/server/api/squareReport/squareReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareReport/squareReport.model.js b/server/api/squareReport/squareReport.model.js
index 97cf276..14a0ee0 100644
--- a/server/api/squareReport/squareReport.model.js
+++ b/server/api/squareReport/squareReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareReport/squareReport.rpc.js b/server/api/squareReport/squareReport.rpc.js
index f88622f..68d3013 100644
--- a/server/api/squareReport/squareReport.rpc.js
+++ b/server/api/squareReport/squareReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareReportDetail/index.js b/server/api/squareReportDetail/index.js
index 4b782c2..2227384 100644
--- a/server/api/squareReportDetail/index.js
+++ b/server/api/squareReportDetail/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareReportDetail/squareReportDetail.attributes.js b/server/api/squareReportDetail/squareReportDetail.attributes.js
index 134be00..c082137 100644
--- a/server/api/squareReportDetail/squareReportDetail.attributes.js
+++ b/server/api/squareReportDetail/squareReportDetail.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareReportDetail/squareReportDetail.controller.js b/server/api/squareReportDetail/squareReportDetail.controller.js
index 347e5b5..c3bd75e 100644
--- a/server/api/squareReportDetail/squareReportDetail.controller.js
+++ b/server/api/squareReportDetail/squareReportDetail.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareReportDetail/squareReportDetail.model.js b/server/api/squareReportDetail/squareReportDetail.model.js
index 9d8c45e..867fbf0 100644
--- a/server/api/squareReportDetail/squareReportDetail.model.js
+++ b/server/api/squareReportDetail/squareReportDetail.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/squareReportDetail/squareReportDetail.rpc.js b/server/api/squareReportDetail/squareReportDetail.rpc.js
index 276d0c8..47fc7bd 100644
--- a/server/api/squareReportDetail/squareReportDetail.rpc.js
+++ b/server/api/squareReportDetail/squareReportDetail.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/system/index.js b/server/api/system/index.js
index b9482e8..fb42d7d 100644
--- a/server/api/system/index.js
+++ b/server/api/system/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/system/system.controller.js b/server/api/system/system.controller.js
index 2c8a9f5..4635279 100644
--- a/server/api/system/system.controller.js
+++ b/server/api/system/system.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/tag/index.js b/server/api/tag/index.js
index da77f24..f4dc8e3 100644
--- a/server/api/tag/index.js
+++ b/server/api/tag/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/tag/tag.attributes.js b/server/api/tag/tag.attributes.js
index 1dad82e..a9bcfb1 100644
--- a/server/api/tag/tag.attributes.js
+++ b/server/api/tag/tag.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/tag/tag.controller.js b/server/api/tag/tag.controller.js
index b12b9c8..efe8d7e 100644
--- a/server/api/tag/tag.controller.js
+++ b/server/api/tag/tag.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/tag/tag.model.js b/server/api/tag/tag.model.js
index 1c0f1f7..59c8dc1 100644
--- a/server/api/tag/tag.model.js
+++ b/server/api/tag/tag.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/tag/tag.rpc.js b/server/api/tag/tag.rpc.js
index cb579f1..04e432c 100644
--- a/server/api/tag/tag.rpc.js
+++ b/server/api/tag/tag.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/team/index.js b/server/api/team/index.js
index 5b2de3a..2e46e62 100644
--- a/server/api/team/index.js
+++ b/server/api/team/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/team/team.attributes.js b/server/api/team/team.attributes.js
index e1d78b5..1333f7d 100644
--- a/server/api/team/team.attributes.js
+++ b/server/api/team/team.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/team/team.controller.js b/server/api/team/team.controller.js
index 0f5366f..734121a 100644
--- a/server/api/team/team.controller.js
+++ b/server/api/team/team.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/team/team.events.js b/server/api/team/team.events.js
index dde8cdc..874c5d0 100644
--- a/server/api/team/team.events.js
+++ b/server/api/team/team.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/team/team.model.js b/server/api/team/team.model.js
index 77c8580..eaaad3d 100644
--- a/server/api/team/team.model.js
+++ b/server/api/team/team.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/team/team.rpc.js b/server/api/team/team.rpc.js
index 7f4afd1..a37c673 100644
--- a/server/api/team/team.rpc.js
+++ b/server/api/team/team.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/team/team.socket.js b/server/api/team/team.socket.js
index 621abf7..64042fa 100644
--- a/server/api/team/team.socket.js
+++ b/server/api/team/team.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/template/index.js b/server/api/template/index.js
index 9a85cb1..1d012b1 100644
--- a/server/api/template/index.js
+++ b/server/api/template/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/template/template.attributes.js b/server/api/template/template.attributes.js
index c399b3f..817d13c 100644
--- a/server/api/template/template.attributes.js
+++ b/server/api/template/template.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/template/template.controller.js b/server/api/template/template.controller.js
index 47ff9d9..de50b0d 100644
--- a/server/api/template/template.controller.js
+++ b/server/api/template/template.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/template/template.model.js b/server/api/template/template.model.js
index b6f2b8e..1b7375e 100644
--- a/server/api/template/template.model.js
+++ b/server/api/template/template.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/template/template.rpc.js b/server/api/template/template.rpc.js
index 07f0ecd..91053d8 100644
--- a/server/api/template/template.rpc.js
+++ b/server/api/template/template.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/trigger/index.js b/server/api/trigger/index.js
index c1d8b9c..d137987 100644
--- a/server/api/trigger/index.js
+++ b/server/api/trigger/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/trigger/trigger.attributes.js b/server/api/trigger/trigger.attributes.js
index 48926f6..e7c1335 100644
--- a/server/api/trigger/trigger.attributes.js
+++ b/server/api/trigger/trigger.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/trigger/trigger.controller.js b/server/api/trigger/trigger.controller.js
index cd50e91..683dde6 100644
--- a/server/api/trigger/trigger.controller.js
+++ b/server/api/trigger/trigger.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/trigger/trigger.model.js b/server/api/trigger/trigger.model.js
index 3ddab1f..eba1c5a 100644
--- a/server/api/trigger/trigger.model.js
+++ b/server/api/trigger/trigger.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/trigger/trigger.rpc.js b/server/api/trigger/trigger.rpc.js
index bf9484b..a5e0165 100644
--- a/server/api/trigger/trigger.rpc.js
+++ b/server/api/trigger/trigger.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/trunk/index.js b/server/api/trunk/index.js
index 0a03422..43d4704 100644
--- a/server/api/trunk/index.js
+++ b/server/api/trunk/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/trunk/trunk.attributes.js b/server/api/trunk/trunk.attributes.js
index e4a50b1..8358fc2 100644
--- a/server/api/trunk/trunk.attributes.js
+++ b/server/api/trunk/trunk.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/trunk/trunk.controller.js b/server/api/trunk/trunk.controller.js
index 16917b2..9267d0a 100644
--- a/server/api/trunk/trunk.controller.js
+++ b/server/api/trunk/trunk.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/trunk/trunk.model.js b/server/api/trunk/trunk.model.js
index 6fc6acb..60a2430 100644
--- a/server/api/trunk/trunk.model.js
+++ b/server/api/trunk/trunk.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/trunk/trunk.rpc.js b/server/api/trunk/trunk.rpc.js
index 4934b92..06acb08 100644
--- a/server/api/trunk/trunk.rpc.js
+++ b/server/api/trunk/trunk.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/user/index.js b/server/api/user/index.js
index 91ca084..e0502e4 100644
--- a/server/api/user/index.js
+++ b/server/api/user/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/user/user.attributes.js b/server/api/user/user.attributes.js
index 6b9fc0a..0ca8545 100644
--- a/server/api/user/user.attributes.js
+++ b/server/api/user/user.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/user/user.controller.js b/server/api/user/user.controller.js
index a045e1b..f314d1a 100644
--- a/server/api/user/user.controller.js
+++ b/server/api/user/user.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/user/user.events.js b/server/api/user/user.events.js
index c810d58..671ea55 100644
--- a/server/api/user/user.events.js
+++ b/server/api/user/user.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/user/user.model.js b/server/api/user/user.model.js
index 0dab312..c692311 100644
--- a/server/api/user/user.model.js
+++ b/server/api/user/user.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/user/user.rpc.js b/server/api/user/user.rpc.js
index ffd27dd..4f32cca 100644
--- a/server/api/user/user.rpc.js
+++ b/server/api/user/user.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/user/user.socket.js b/server/api/user/user.socket.js
index d25d93f..bb8bfd1 100644
--- a/server/api/user/user.socket.js
+++ b/server/api/user/user.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userChatQueue/index.js b/server/api/userChatQueue/index.js
index 8712051..2d6c166 100644
--- a/server/api/userChatQueue/index.js
+++ b/server/api/userChatQueue/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userChatQueue/userChatQueue.attributes.js b/server/api/userChatQueue/userChatQueue.attributes.js
index 4ef855b..553f130 100644
--- a/server/api/userChatQueue/userChatQueue.attributes.js
+++ b/server/api/userChatQueue/userChatQueue.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
-var _0xb10b=['sequelize','INTEGER'];(function(_0x3b50be,_0x2a25cd){var _0x528868=function(_0x222a40){while(--_0x222a40){_0x3b50be['push'](_0x3b50be['shift']());}};_0x528868(++_0x2a25cd);}(_0xb10b,0x12a));var _0xbb10=function(_0x2c6484,_0x4fe72c){_0x2c6484=_0x2c6484-0x0;var _0x3b9d94=_0xb10b[_0x2c6484];return _0x3b9d94;};'use strict';var Sequelize=require(_0xbb10('0x0'));module['exports']={'penalty':{'type':Sequelize[_0xbb10('0x1')],'defaultValue':0x0}};
\ No newline at end of file
+var _0xe706=['INTEGER','sequelize','exports'];(function(_0x39de0f,_0xd3a92c){var _0x569e34=function(_0x536761){while(--_0x536761){_0x39de0f['push'](_0x39de0f['shift']());}};_0x569e34(++_0xd3a92c);}(_0xe706,0xa3));var _0x6e70=function(_0x5e1248,_0x42b862){_0x5e1248=_0x5e1248-0x0;var _0x1b4201=_0xe706[_0x5e1248];return _0x1b4201;};'use strict';var Sequelize=require(_0x6e70('0x0'));module[_0x6e70('0x1')]={'penalty':{'type':Sequelize[_0x6e70('0x2')],'defaultValue':0x0}};
\ No newline at end of file
diff --git a/server/api/userChatQueue/userChatQueue.model.js b/server/api/userChatQueue/userChatQueue.model.js
index 71c68f9..bb744a8 100644
--- a/server/api/userChatQueue/userChatQueue.model.js
+++ b/server/api/userChatQueue/userChatQueue.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userChatQueue/userChatQueue.rpc.js b/server/api/userChatQueue/userChatQueue.rpc.js
index 2e67cb8..67eaeae 100644
--- a/server/api/userChatQueue/userChatQueue.rpc.js
+++ b/server/api/userChatQueue/userChatQueue.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userFaxQueue/index.js b/server/api/userFaxQueue/index.js
index 9e2e52d..07806e6 100644
--- a/server/api/userFaxQueue/index.js
+++ b/server/api/userFaxQueue/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userFaxQueue/userFaxQueue.attributes.js b/server/api/userFaxQueue/userFaxQueue.attributes.js
index 931ccea..97ab6a3 100644
--- a/server/api/userFaxQueue/userFaxQueue.attributes.js
+++ b/server/api/userFaxQueue/userFaxQueue.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userFaxQueue/userFaxQueue.model.js b/server/api/userFaxQueue/userFaxQueue.model.js
index 8cd180c..cd5a77e 100644
--- a/server/api/userFaxQueue/userFaxQueue.model.js
+++ b/server/api/userFaxQueue/userFaxQueue.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userFaxQueue/userFaxQueue.rpc.js b/server/api/userFaxQueue/userFaxQueue.rpc.js
index 8c7165b..cbb324c 100644
--- a/server/api/userFaxQueue/userFaxQueue.rpc.js
+++ b/server/api/userFaxQueue/userFaxQueue.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userMailQueue/index.js b/server/api/userMailQueue/index.js
index 9f6fd24..706cae9 100644
--- a/server/api/userMailQueue/index.js
+++ b/server/api/userMailQueue/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userMailQueue/userMailQueue.attributes.js b/server/api/userMailQueue/userMailQueue.attributes.js
index 663bda9..d1442ea 100644
--- a/server/api/userMailQueue/userMailQueue.attributes.js
+++ b/server/api/userMailQueue/userMailQueue.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
-var _0xbaf0=['exports','INTEGER'];(function(_0x4e05d8,_0xab2ee9){var _0x356a48=function(_0x161d87){while(--_0x161d87){_0x4e05d8['push'](_0x4e05d8['shift']());}};_0x356a48(++_0xab2ee9);}(_0xbaf0,0x12a));var _0x0baf=function(_0x3947c9,_0x4d6c97){_0x3947c9=_0x3947c9-0x0;var _0x2e7871=_0xbaf0[_0x3947c9];return _0x2e7871;};'use strict';var Sequelize=require('sequelize');module[_0x0baf('0x0')]={'penalty':{'type':Sequelize[_0x0baf('0x1')],'defaultValue':0x0}};
\ No newline at end of file
+var _0xd8b0=['exports','sequelize'];(function(_0x4f7e5b,_0x452c65){var _0x13ea34=function(_0x3f04c0){while(--_0x3f04c0){_0x4f7e5b['push'](_0x4f7e5b['shift']());}};_0x13ea34(++_0x452c65);}(_0xd8b0,0xad));var _0x0d8b=function(_0x20a584,_0xe384a5){_0x20a584=_0x20a584-0x0;var _0x4b41a8=_0xd8b0[_0x20a584];return _0x4b41a8;};'use strict';var Sequelize=require(_0x0d8b('0x0'));module[_0x0d8b('0x1')]={'penalty':{'type':Sequelize['INTEGER'],'defaultValue':0x0}};
\ No newline at end of file
diff --git a/server/api/userMailQueue/userMailQueue.model.js b/server/api/userMailQueue/userMailQueue.model.js
index f79290c..795634e 100644
--- a/server/api/userMailQueue/userMailQueue.model.js
+++ b/server/api/userMailQueue/userMailQueue.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userMailQueue/userMailQueue.rpc.js b/server/api/userMailQueue/userMailQueue.rpc.js
index cef8e19..8afa61e 100644
--- a/server/api/userMailQueue/userMailQueue.rpc.js
+++ b/server/api/userMailQueue/userMailQueue.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userOpenchannelQueue/index.js b/server/api/userOpenchannelQueue/index.js
index cc658e7..01d765e 100644
--- a/server/api/userOpenchannelQueue/index.js
+++ b/server/api/userOpenchannelQueue/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userOpenchannelQueue/userOpenchannelQueue.attributes.js b/server/api/userOpenchannelQueue/userOpenchannelQueue.attributes.js
index d28fdb1..a794731 100644
--- a/server/api/userOpenchannelQueue/userOpenchannelQueue.attributes.js
+++ b/server/api/userOpenchannelQueue/userOpenchannelQueue.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
-var _0xe706=['INTEGER','sequelize','exports'];(function(_0x4451b0,_0xcf1256){var _0x78f518=function(_0x6ffc86){while(--_0x6ffc86){_0x4451b0['push'](_0x4451b0['shift']());}};_0x78f518(++_0xcf1256);}(_0xe706,0xa3));var _0x6e70=function(_0x57ed68,_0x13cab4){_0x57ed68=_0x57ed68-0x0;var _0x5a46f9=_0xe706[_0x57ed68];return _0x5a46f9;};'use strict';var Sequelize=require(_0x6e70('0x0'));module[_0x6e70('0x1')]={'penalty':{'type':Sequelize[_0x6e70('0x2')],'defaultValue':0x0}};
\ No newline at end of file
+var _0xe706=['INTEGER','sequelize','exports'];(function(_0x3cf4cd,_0x2e6bb9){var _0x44a40b=function(_0x358b5e){while(--_0x358b5e){_0x3cf4cd['push'](_0x3cf4cd['shift']());}};_0x44a40b(++_0x2e6bb9);}(_0xe706,0xa3));var _0x6e70=function(_0x43244c,_0xa2a77f){_0x43244c=_0x43244c-0x0;var _0x34babb=_0xe706[_0x43244c];return _0x34babb;};'use strict';var Sequelize=require(_0x6e70('0x0'));module[_0x6e70('0x1')]={'penalty':{'type':Sequelize[_0x6e70('0x2')],'defaultValue':0x0}};
\ No newline at end of file
diff --git a/server/api/userOpenchannelQueue/userOpenchannelQueue.model.js b/server/api/userOpenchannelQueue/userOpenchannelQueue.model.js
index b41e2d2..7f17772 100644
--- a/server/api/userOpenchannelQueue/userOpenchannelQueue.model.js
+++ b/server/api/userOpenchannelQueue/userOpenchannelQueue.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userOpenchannelQueue/userOpenchannelQueue.rpc.js b/server/api/userOpenchannelQueue/userOpenchannelQueue.rpc.js
index ad6cc17..71e7397 100644
--- a/server/api/userOpenchannelQueue/userOpenchannelQueue.rpc.js
+++ b/server/api/userOpenchannelQueue/userOpenchannelQueue.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userProfile/index.js b/server/api/userProfile/index.js
index 5b618c2..d8cf9b6 100644
--- a/server/api/userProfile/index.js
+++ b/server/api/userProfile/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userProfile/userProfile.attributes.js b/server/api/userProfile/userProfile.attributes.js
index dd72952..912cb52 100644
--- a/server/api/userProfile/userProfile.attributes.js
+++ b/server/api/userProfile/userProfile.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userProfile/userProfile.controller.js b/server/api/userProfile/userProfile.controller.js
index ab7d421..f937fcf 100644
--- a/server/api/userProfile/userProfile.controller.js
+++ b/server/api/userProfile/userProfile.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userProfile/userProfile.events.js b/server/api/userProfile/userProfile.events.js
index c87e3e5..d9189fe 100644
--- a/server/api/userProfile/userProfile.events.js
+++ b/server/api/userProfile/userProfile.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userProfile/userProfile.model.js b/server/api/userProfile/userProfile.model.js
index 5cad988..1d839bc 100644
--- a/server/api/userProfile/userProfile.model.js
+++ b/server/api/userProfile/userProfile.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userProfile/userProfile.rpc.js b/server/api/userProfile/userProfile.rpc.js
index 612842c..e0e2637 100644
--- a/server/api/userProfile/userProfile.rpc.js
+++ b/server/api/userProfile/userProfile.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userProfile/userProfile.socket.js b/server/api/userProfile/userProfile.socket.js
index 2d93b21..a2ee647 100644
--- a/server/api/userProfile/userProfile.socket.js
+++ b/server/api/userProfile/userProfile.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userProfileResource/index.js b/server/api/userProfileResource/index.js
index d29b08d..7508d1c 100644
--- a/server/api/userProfileResource/index.js
+++ b/server/api/userProfileResource/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userProfileResource/userProfileResource.attributes.js b/server/api/userProfileResource/userProfileResource.attributes.js
index fe27374..8969308 100644
--- a/server/api/userProfileResource/userProfileResource.attributes.js
+++ b/server/api/userProfileResource/userProfileResource.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userProfileResource/userProfileResource.controller.js b/server/api/userProfileResource/userProfileResource.controller.js
index d069e52..4b850d6 100644
--- a/server/api/userProfileResource/userProfileResource.controller.js
+++ b/server/api/userProfileResource/userProfileResource.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userProfileResource/userProfileResource.model.js b/server/api/userProfileResource/userProfileResource.model.js
index a7240cd..83e2e50 100644
--- a/server/api/userProfileResource/userProfileResource.model.js
+++ b/server/api/userProfileResource/userProfileResource.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userProfileResource/userProfileResource.rpc.js b/server/api/userProfileResource/userProfileResource.rpc.js
index f6fb3aa..e8e5f62 100644
--- a/server/api/userProfileResource/userProfileResource.rpc.js
+++ b/server/api/userProfileResource/userProfileResource.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userProfileSection/index.js b/server/api/userProfileSection/index.js
index 77bed92..b9dfb58 100644
--- a/server/api/userProfileSection/index.js
+++ b/server/api/userProfileSection/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userProfileSection/userProfileSection.attributes.js b/server/api/userProfileSection/userProfileSection.attributes.js
index e1042ee..bf2ad97 100644
--- a/server/api/userProfileSection/userProfileSection.attributes.js
+++ b/server/api/userProfileSection/userProfileSection.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userProfileSection/userProfileSection.controller.js b/server/api/userProfileSection/userProfileSection.controller.js
index 8f8602d..8ec0348 100644
--- a/server/api/userProfileSection/userProfileSection.controller.js
+++ b/server/api/userProfileSection/userProfileSection.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userProfileSection/userProfileSection.model.js b/server/api/userProfileSection/userProfileSection.model.js
index 9b455f0..c28d1b1 100644
--- a/server/api/userProfileSection/userProfileSection.model.js
+++ b/server/api/userProfileSection/userProfileSection.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userProfileSection/userProfileSection.rpc.js b/server/api/userProfileSection/userProfileSection.rpc.js
index a683b5c..6e6042d 100644
--- a/server/api/userProfileSection/userProfileSection.rpc.js
+++ b/server/api/userProfileSection/userProfileSection.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userSmsQueue/index.js b/server/api/userSmsQueue/index.js
index 0d42a31..7f56fef 100644
--- a/server/api/userSmsQueue/index.js
+++ b/server/api/userSmsQueue/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userSmsQueue/userSmsQueue.attributes.js b/server/api/userSmsQueue/userSmsQueue.attributes.js
index bf310f0..b585e93 100644
--- a/server/api/userSmsQueue/userSmsQueue.attributes.js
+++ b/server/api/userSmsQueue/userSmsQueue.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
-var _0xb10b=['sequelize','INTEGER'];(function(_0x59a6d3,_0x56fe55){var _0x45ea9d=function(_0x4f05b0){while(--_0x4f05b0){_0x59a6d3['push'](_0x59a6d3['shift']());}};_0x45ea9d(++_0x56fe55);}(_0xb10b,0x12a));var _0xbb10=function(_0x241424,_0x25eb5d){_0x241424=_0x241424-0x0;var _0x3da798=_0xb10b[_0x241424];return _0x3da798;};'use strict';var Sequelize=require(_0xbb10('0x0'));module['exports']={'penalty':{'type':Sequelize[_0xbb10('0x1')],'defaultValue':0x0}};
\ No newline at end of file
+var _0xd8b0=['exports','sequelize'];(function(_0x1f6a60,_0x1465de){var _0x526310=function(_0x18fef2){while(--_0x18fef2){_0x1f6a60['push'](_0x1f6a60['shift']());}};_0x526310(++_0x1465de);}(_0xd8b0,0xad));var _0x0d8b=function(_0x20a584,_0xe384a5){_0x20a584=_0x20a584-0x0;var _0x4b41a8=_0xd8b0[_0x20a584];return _0x4b41a8;};'use strict';var Sequelize=require(_0x0d8b('0x0'));module[_0x0d8b('0x1')]={'penalty':{'type':Sequelize['INTEGER'],'defaultValue':0x0}};
\ No newline at end of file
diff --git a/server/api/userSmsQueue/userSmsQueue.model.js b/server/api/userSmsQueue/userSmsQueue.model.js
index 853b355..ac68d81 100644
--- a/server/api/userSmsQueue/userSmsQueue.model.js
+++ b/server/api/userSmsQueue/userSmsQueue.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userSmsQueue/userSmsQueue.rpc.js b/server/api/userSmsQueue/userSmsQueue.rpc.js
index 35d9dad..3b62a13 100644
--- a/server/api/userSmsQueue/userSmsQueue.rpc.js
+++ b/server/api/userSmsQueue/userSmsQueue.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userVoiceQueue/index.js b/server/api/userVoiceQueue/index.js
index e93289e..53483d4 100644
--- a/server/api/userVoiceQueue/index.js
+++ b/server/api/userVoiceQueue/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userVoiceQueue/userVoiceQueue.attributes.js b/server/api/userVoiceQueue/userVoiceQueue.attributes.js
index e5014a9..ac589b0 100644
--- a/server/api/userVoiceQueue/userVoiceQueue.attributes.js
+++ b/server/api/userVoiceQueue/userVoiceQueue.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
-var _0xbaf0=['exports','INTEGER'];(function(_0x349a9e,_0x473cb8){var _0x24c207=function(_0x22f148){while(--_0x22f148){_0x349a9e['push'](_0x349a9e['shift']());}};_0x24c207(++_0x473cb8);}(_0xbaf0,0x12a));var _0x0baf=function(_0x3947c9,_0x4d6c97){_0x3947c9=_0x3947c9-0x0;var _0x2e7871=_0xbaf0[_0x3947c9];return _0x2e7871;};'use strict';var Sequelize=require('sequelize');module[_0x0baf('0x0')]={'penalty':{'type':Sequelize[_0x0baf('0x1')],'defaultValue':0x0}};
\ No newline at end of file
+var _0xe706=['INTEGER','sequelize','exports'];(function(_0x35f36d,_0x3c2b41){var _0x322cd1=function(_0xb764dc){while(--_0xb764dc){_0x35f36d['push'](_0x35f36d['shift']());}};_0x322cd1(++_0x3c2b41);}(_0xe706,0xa3));var _0x6e70=function(_0x550ef9,_0x3a9b13){_0x550ef9=_0x550ef9-0x0;var _0x252d95=_0xe706[_0x550ef9];return _0x252d95;};'use strict';var Sequelize=require(_0x6e70('0x0'));module[_0x6e70('0x1')]={'penalty':{'type':Sequelize[_0x6e70('0x2')],'defaultValue':0x0}};
\ No newline at end of file
diff --git a/server/api/userVoiceQueue/userVoiceQueue.model.js b/server/api/userVoiceQueue/userVoiceQueue.model.js
index d500eb8..a3021af 100644
--- a/server/api/userVoiceQueue/userVoiceQueue.model.js
+++ b/server/api/userVoiceQueue/userVoiceQueue.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userVoiceQueue/userVoiceQueue.rpc.js b/server/api/userVoiceQueue/userVoiceQueue.rpc.js
index 00778ae..c974271 100644
--- a/server/api/userVoiceQueue/userVoiceQueue.rpc.js
+++ b/server/api/userVoiceQueue/userVoiceQueue.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userVoiceQueueRt/index.js b/server/api/userVoiceQueueRt/index.js
index 9795f63..62eea55 100644
--- a/server/api/userVoiceQueueRt/index.js
+++ b/server/api/userVoiceQueueRt/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userVoiceQueueRt/userVoiceQueueRt.attributes.js b/server/api/userVoiceQueueRt/userVoiceQueueRt.attributes.js
index 308bd73..08fe287 100644
--- a/server/api/userVoiceQueueRt/userVoiceQueueRt.attributes.js
+++ b/server/api/userVoiceQueueRt/userVoiceQueueRt.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userVoiceQueueRt/userVoiceQueueRt.events.js b/server/api/userVoiceQueueRt/userVoiceQueueRt.events.js
index c31649b..727dfcb 100644
--- a/server/api/userVoiceQueueRt/userVoiceQueueRt.events.js
+++ b/server/api/userVoiceQueueRt/userVoiceQueueRt.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userVoiceQueueRt/userVoiceQueueRt.model.js b/server/api/userVoiceQueueRt/userVoiceQueueRt.model.js
index 575c697..fd0e96b 100644
--- a/server/api/userVoiceQueueRt/userVoiceQueueRt.model.js
+++ b/server/api/userVoiceQueueRt/userVoiceQueueRt.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userVoiceQueueRt/userVoiceQueueRt.rpc.js b/server/api/userVoiceQueueRt/userVoiceQueueRt.rpc.js
index 925c4bc..3b0d101 100644
--- a/server/api/userVoiceQueueRt/userVoiceQueueRt.rpc.js
+++ b/server/api/userVoiceQueueRt/userVoiceQueueRt.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userVoiceQueueRt/userVoiceQueueRt.socket.js b/server/api/userVoiceQueueRt/userVoiceQueueRt.socket.js
index 5e33693..ab6e70f 100644
--- a/server/api/userVoiceQueueRt/userVoiceQueueRt.socket.js
+++ b/server/api/userVoiceQueueRt/userVoiceQueueRt.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userWhatsappQueue/index.js b/server/api/userWhatsappQueue/index.js
index d32d6d9..ceb94a8 100644
--- a/server/api/userWhatsappQueue/index.js
+++ b/server/api/userWhatsappQueue/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userWhatsappQueue/userWhatsappQueue.attributes.js b/server/api/userWhatsappQueue/userWhatsappQueue.attributes.js
index 9f762fd..909bba9 100644
--- a/server/api/userWhatsappQueue/userWhatsappQueue.attributes.js
+++ b/server/api/userWhatsappQueue/userWhatsappQueue.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
-var _0xbaf0=['exports','INTEGER'];(function(_0x569caa,_0x5174ce){var _0x44cb5a=function(_0x456df4){while(--_0x456df4){_0x569caa['push'](_0x569caa['shift']());}};_0x44cb5a(++_0x5174ce);}(_0xbaf0,0x12a));var _0x0baf=function(_0x19e35c,_0x29cd1e){_0x19e35c=_0x19e35c-0x0;var _0x3e1fe8=_0xbaf0[_0x19e35c];return _0x3e1fe8;};'use strict';var Sequelize=require('sequelize');module[_0x0baf('0x0')]={'penalty':{'type':Sequelize[_0x0baf('0x1')],'defaultValue':0x0}};
\ No newline at end of file
+var _0xd8b0=['exports','sequelize'];(function(_0x96d8bb,_0x59e193){var _0x296ef2=function(_0x1735cc){while(--_0x1735cc){_0x96d8bb['push'](_0x96d8bb['shift']());}};_0x296ef2(++_0x59e193);}(_0xd8b0,0xad));var _0x0d8b=function(_0x20a584,_0xe384a5){_0x20a584=_0x20a584-0x0;var _0x4b41a8=_0xd8b0[_0x20a584];return _0x4b41a8;};'use strict';var Sequelize=require(_0x0d8b('0x0'));module[_0x0d8b('0x1')]={'penalty':{'type':Sequelize['INTEGER'],'defaultValue':0x0}};
\ No newline at end of file
diff --git a/server/api/userWhatsappQueue/userWhatsappQueue.model.js b/server/api/userWhatsappQueue/userWhatsappQueue.model.js
index cc2fa53..6bdad25 100644
--- a/server/api/userWhatsappQueue/userWhatsappQueue.model.js
+++ b/server/api/userWhatsappQueue/userWhatsappQueue.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/userWhatsappQueue/userWhatsappQueue.rpc.js b/server/api/userWhatsappQueue/userWhatsappQueue.rpc.js
index ff9eb04..576fd4c 100644
--- a/server/api/userWhatsappQueue/userWhatsappQueue.rpc.js
+++ b/server/api/userWhatsappQueue/userWhatsappQueue.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/variable/index.js b/server/api/variable/index.js
index dd151b6..c6a6ac8 100644
--- a/server/api/variable/index.js
+++ b/server/api/variable/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/variable/variable.attributes.js b/server/api/variable/variable.attributes.js
index 4f29f85..5b7fdd0 100644
--- a/server/api/variable/variable.attributes.js
+++ b/server/api/variable/variable.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/variable/variable.controller.js b/server/api/variable/variable.controller.js
index 0fb8786..007ba55 100644
--- a/server/api/variable/variable.controller.js
+++ b/server/api/variable/variable.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/variable/variable.model.js b/server/api/variable/variable.model.js
index 981a3f6..9247dd9 100644
--- a/server/api/variable/variable.model.js
+++ b/server/api/variable/variable.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/variable/variable.rpc.js b/server/api/variable/variable.rpc.js
index 5cc175b..1a24e6d 100644
--- a/server/api/variable/variable.rpc.js
+++ b/server/api/variable/variable.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/version/index.js b/server/api/version/index.js
index 8c8290f..7de6aab 100644
--- a/server/api/version/index.js
+++ b/server/api/version/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/version/version.controller.js b/server/api/version/version.controller.js
index c98af8d..6420dbc 100644
--- a/server/api/version/version.controller.js
+++ b/server/api/version/version.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceAgentReport/index.js b/server/api/voiceAgentReport/index.js
index 803d31c..35b263e 100644
--- a/server/api/voiceAgentReport/index.js
+++ b/server/api/voiceAgentReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceAgentReport/voiceAgentReport.attributes.js b/server/api/voiceAgentReport/voiceAgentReport.attributes.js
index 6980ad4..d706b44 100644
--- a/server/api/voiceAgentReport/voiceAgentReport.attributes.js
+++ b/server/api/voiceAgentReport/voiceAgentReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceAgentReport/voiceAgentReport.controller.js b/server/api/voiceAgentReport/voiceAgentReport.controller.js
index 15ac778..4b5ef2e 100644
--- a/server/api/voiceAgentReport/voiceAgentReport.controller.js
+++ b/server/api/voiceAgentReport/voiceAgentReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceAgentReport/voiceAgentReport.model.js b/server/api/voiceAgentReport/voiceAgentReport.model.js
index fc2cca5..793957a 100644
--- a/server/api/voiceAgentReport/voiceAgentReport.model.js
+++ b/server/api/voiceAgentReport/voiceAgentReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceAgentReport/voiceAgentReport.rpc.js b/server/api/voiceAgentReport/voiceAgentReport.rpc.js
index 0e7a826..10aeb5e 100644
--- a/server/api/voiceAgentReport/voiceAgentReport.rpc.js
+++ b/server/api/voiceAgentReport/voiceAgentReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceCallReport/index.js b/server/api/voiceCallReport/index.js
index d962e9a..2c7337e 100644
--- a/server/api/voiceCallReport/index.js
+++ b/server/api/voiceCallReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceCallReport/voiceCallReport.attributes.js b/server/api/voiceCallReport/voiceCallReport.attributes.js
index aa6951d..909743f 100644
--- a/server/api/voiceCallReport/voiceCallReport.attributes.js
+++ b/server/api/voiceCallReport/voiceCallReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceCallReport/voiceCallReport.controller.js b/server/api/voiceCallReport/voiceCallReport.controller.js
index 85db5da..3f478d4 100644
--- a/server/api/voiceCallReport/voiceCallReport.controller.js
+++ b/server/api/voiceCallReport/voiceCallReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceCallReport/voiceCallReport.model.js b/server/api/voiceCallReport/voiceCallReport.model.js
index c4923cd..78592aa 100644
--- a/server/api/voiceCallReport/voiceCallReport.model.js
+++ b/server/api/voiceCallReport/voiceCallReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceCallReport/voiceCallReport.rpc.js b/server/api/voiceCallReport/voiceCallReport.rpc.js
index 7f879e2..eab9e4f 100644
--- a/server/api/voiceCallReport/voiceCallReport.rpc.js
+++ b/server/api/voiceCallReport/voiceCallReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceChanSpy/index.js b/server/api/voiceChanSpy/index.js
index a5b9f9d..c0b0c15 100644
--- a/server/api/voiceChanSpy/index.js
+++ b/server/api/voiceChanSpy/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceChanSpy/voiceChanSpy.attributes.js b/server/api/voiceChanSpy/voiceChanSpy.attributes.js
index 9af42ed..4129d1d 100644
--- a/server/api/voiceChanSpy/voiceChanSpy.attributes.js
+++ b/server/api/voiceChanSpy/voiceChanSpy.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceChanSpy/voiceChanSpy.controller.js b/server/api/voiceChanSpy/voiceChanSpy.controller.js
index 4da8fc7..ec461f4 100644
--- a/server/api/voiceChanSpy/voiceChanSpy.controller.js
+++ b/server/api/voiceChanSpy/voiceChanSpy.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceChanSpy/voiceChanSpy.model.js b/server/api/voiceChanSpy/voiceChanSpy.model.js
index 7708b3a..2a4b963 100644
--- a/server/api/voiceChanSpy/voiceChanSpy.model.js
+++ b/server/api/voiceChanSpy/voiceChanSpy.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceChanSpy/voiceChanSpy.rpc.js b/server/api/voiceChanSpy/voiceChanSpy.rpc.js
index 87d87b8..347a35b 100644
--- a/server/api/voiceChanSpy/voiceChanSpy.rpc.js
+++ b/server/api/voiceChanSpy/voiceChanSpy.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceContext/index.js b/server/api/voiceContext/index.js
index 89b5d7e..d1673db 100644
--- a/server/api/voiceContext/index.js
+++ b/server/api/voiceContext/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceContext/voiceContext.attributes.js b/server/api/voiceContext/voiceContext.attributes.js
index 0a3575c..646e745 100644
--- a/server/api/voiceContext/voiceContext.attributes.js
+++ b/server/api/voiceContext/voiceContext.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceContext/voiceContext.controller.js b/server/api/voiceContext/voiceContext.controller.js
index d45d582..08629b7 100644
--- a/server/api/voiceContext/voiceContext.controller.js
+++ b/server/api/voiceContext/voiceContext.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceContext/voiceContext.model.js b/server/api/voiceContext/voiceContext.model.js
index 6c38d00..5a162ce 100644
--- a/server/api/voiceContext/voiceContext.model.js
+++ b/server/api/voiceContext/voiceContext.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceContext/voiceContext.rpc.js b/server/api/voiceContext/voiceContext.rpc.js
index 8a440f5..9cf1693 100644
--- a/server/api/voiceContext/voiceContext.rpc.js
+++ b/server/api/voiceContext/voiceContext.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceDialReport/index.js b/server/api/voiceDialReport/index.js
index d2d1618..7b5160f 100644
--- a/server/api/voiceDialReport/index.js
+++ b/server/api/voiceDialReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceDialReport/voiceDialReport.attributes.js b/server/api/voiceDialReport/voiceDialReport.attributes.js
index f4920cd..71413ac 100644
--- a/server/api/voiceDialReport/voiceDialReport.attributes.js
+++ b/server/api/voiceDialReport/voiceDialReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceDialReport/voiceDialReport.controller.js b/server/api/voiceDialReport/voiceDialReport.controller.js
index 2b6c01b..4378dcf 100644
--- a/server/api/voiceDialReport/voiceDialReport.controller.js
+++ b/server/api/voiceDialReport/voiceDialReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceDialReport/voiceDialReport.model.js b/server/api/voiceDialReport/voiceDialReport.model.js
index e35dfb4..7be5fb3 100644
--- a/server/api/voiceDialReport/voiceDialReport.model.js
+++ b/server/api/voiceDialReport/voiceDialReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceDialReport/voiceDialReport.rpc.js b/server/api/voiceDialReport/voiceDialReport.rpc.js
index 5173be8..8b0f18f 100644
--- a/server/api/voiceDialReport/voiceDialReport.rpc.js
+++ b/server/api/voiceDialReport/voiceDialReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceExtension/index.js b/server/api/voiceExtension/index.js
index 32ea71d..7b56c5e 100644
--- a/server/api/voiceExtension/index.js
+++ b/server/api/voiceExtension/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceExtension/voiceExtension.attributes.js b/server/api/voiceExtension/voiceExtension.attributes.js
index 93b8ece..29fb2b9 100644
--- a/server/api/voiceExtension/voiceExtension.attributes.js
+++ b/server/api/voiceExtension/voiceExtension.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceExtension/voiceExtension.controller.js b/server/api/voiceExtension/voiceExtension.controller.js
index bc2311c..801ad04 100644
--- a/server/api/voiceExtension/voiceExtension.controller.js
+++ b/server/api/voiceExtension/voiceExtension.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceExtension/voiceExtension.events.js b/server/api/voiceExtension/voiceExtension.events.js
index 78fe8c6..e0a60fc 100644
--- a/server/api/voiceExtension/voiceExtension.events.js
+++ b/server/api/voiceExtension/voiceExtension.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceExtension/voiceExtension.model.js b/server/api/voiceExtension/voiceExtension.model.js
index 86bcde7..0e05941 100644
--- a/server/api/voiceExtension/voiceExtension.model.js
+++ b/server/api/voiceExtension/voiceExtension.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceExtension/voiceExtension.rpc.js b/server/api/voiceExtension/voiceExtension.rpc.js
index cd798ef..dd3c637 100644
--- a/server/api/voiceExtension/voiceExtension.rpc.js
+++ b/server/api/voiceExtension/voiceExtension.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceExtension/voiceExtension.socket.js b/server/api/voiceExtension/voiceExtension.socket.js
index 8d78414..c9ddb3a 100644
--- a/server/api/voiceExtension/voiceExtension.socket.js
+++ b/server/api/voiceExtension/voiceExtension.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceMail/index.js b/server/api/voiceMail/index.js
index 4251643..b5e489f 100644
--- a/server/api/voiceMail/index.js
+++ b/server/api/voiceMail/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceMail/voiceMail.attributes.js b/server/api/voiceMail/voiceMail.attributes.js
index 7798108..da3963b 100644
--- a/server/api/voiceMail/voiceMail.attributes.js
+++ b/server/api/voiceMail/voiceMail.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceMail/voiceMail.controller.js b/server/api/voiceMail/voiceMail.controller.js
index 84d2fba..c4383d9 100644
--- a/server/api/voiceMail/voiceMail.controller.js
+++ b/server/api/voiceMail/voiceMail.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceMail/voiceMail.model.js b/server/api/voiceMail/voiceMail.model.js
index 995f128..771bf31 100644
--- a/server/api/voiceMail/voiceMail.model.js
+++ b/server/api/voiceMail/voiceMail.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceMail/voiceMail.rpc.js b/server/api/voiceMail/voiceMail.rpc.js
index 16017f8..4652969 100644
--- a/server/api/voiceMail/voiceMail.rpc.js
+++ b/server/api/voiceMail/voiceMail.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceMailMessage/index.js b/server/api/voiceMailMessage/index.js
index 360e3cf..4c72503 100644
--- a/server/api/voiceMailMessage/index.js
+++ b/server/api/voiceMailMessage/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceMailMessage/voiceMailMessage.attributes.js b/server/api/voiceMailMessage/voiceMailMessage.attributes.js
index 58cbcb1..9884e98 100644
--- a/server/api/voiceMailMessage/voiceMailMessage.attributes.js
+++ b/server/api/voiceMailMessage/voiceMailMessage.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceMailMessage/voiceMailMessage.controller.js b/server/api/voiceMailMessage/voiceMailMessage.controller.js
index ee279eb..6072945 100644
--- a/server/api/voiceMailMessage/voiceMailMessage.controller.js
+++ b/server/api/voiceMailMessage/voiceMailMessage.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceMailMessage/voiceMailMessage.model.js b/server/api/voiceMailMessage/voiceMailMessage.model.js
index 785a58f..5bf7066 100644
--- a/server/api/voiceMailMessage/voiceMailMessage.model.js
+++ b/server/api/voiceMailMessage/voiceMailMessage.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceMailMessage/voiceMailMessage.rpc.js b/server/api/voiceMailMessage/voiceMailMessage.rpc.js
index fa19419..713b8c1 100644
--- a/server/api/voiceMailMessage/voiceMailMessage.rpc.js
+++ b/server/api/voiceMailMessage/voiceMailMessage.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceMusicOnHold/index.js b/server/api/voiceMusicOnHold/index.js
index d18586c..1c8e81c 100644
--- a/server/api/voiceMusicOnHold/index.js
+++ b/server/api/voiceMusicOnHold/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceMusicOnHold/voiceMusicOnHold.attributes.js b/server/api/voiceMusicOnHold/voiceMusicOnHold.attributes.js
index d324a92..7fc2256 100644
--- a/server/api/voiceMusicOnHold/voiceMusicOnHold.attributes.js
+++ b/server/api/voiceMusicOnHold/voiceMusicOnHold.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceMusicOnHold/voiceMusicOnHold.controller.js b/server/api/voiceMusicOnHold/voiceMusicOnHold.controller.js
index 48d9a49..dd52155 100644
--- a/server/api/voiceMusicOnHold/voiceMusicOnHold.controller.js
+++ b/server/api/voiceMusicOnHold/voiceMusicOnHold.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceMusicOnHold/voiceMusicOnHold.model.js b/server/api/voiceMusicOnHold/voiceMusicOnHold.model.js
index df6f2e8..c4dbdcb 100644
--- a/server/api/voiceMusicOnHold/voiceMusicOnHold.model.js
+++ b/server/api/voiceMusicOnHold/voiceMusicOnHold.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceMusicOnHold/voiceMusicOnHold.rpc.js b/server/api/voiceMusicOnHold/voiceMusicOnHold.rpc.js
index ea6d489..eb68965 100644
--- a/server/api/voiceMusicOnHold/voiceMusicOnHold.rpc.js
+++ b/server/api/voiceMusicOnHold/voiceMusicOnHold.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voicePrefix/index.js b/server/api/voicePrefix/index.js
index 253cbf7..a24b51b 100644
--- a/server/api/voicePrefix/index.js
+++ b/server/api/voicePrefix/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voicePrefix/voicePrefix.attributes.js b/server/api/voicePrefix/voicePrefix.attributes.js
index b14dd44..ef9901f 100644
--- a/server/api/voicePrefix/voicePrefix.attributes.js
+++ b/server/api/voicePrefix/voicePrefix.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voicePrefix/voicePrefix.controller.js b/server/api/voicePrefix/voicePrefix.controller.js
index 220acf8..7220b99 100644
--- a/server/api/voicePrefix/voicePrefix.controller.js
+++ b/server/api/voicePrefix/voicePrefix.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voicePrefix/voicePrefix.events.js b/server/api/voicePrefix/voicePrefix.events.js
index 8efedcf..f291442 100644
--- a/server/api/voicePrefix/voicePrefix.events.js
+++ b/server/api/voicePrefix/voicePrefix.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voicePrefix/voicePrefix.model.js b/server/api/voicePrefix/voicePrefix.model.js
index 74f814a..c4c78bc 100644
--- a/server/api/voicePrefix/voicePrefix.model.js
+++ b/server/api/voicePrefix/voicePrefix.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voicePrefix/voicePrefix.rpc.js b/server/api/voicePrefix/voicePrefix.rpc.js
index dd43bfa..980051e 100644
--- a/server/api/voicePrefix/voicePrefix.rpc.js
+++ b/server/api/voicePrefix/voicePrefix.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voicePrefix/voicePrefix.socket.js b/server/api/voicePrefix/voicePrefix.socket.js
index 50872d7..6de412c 100644
--- a/server/api/voicePrefix/voicePrefix.socket.js
+++ b/server/api/voicePrefix/voicePrefix.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceQueue/index.js b/server/api/voiceQueue/index.js
index 9754c36..2767ecd 100644
--- a/server/api/voiceQueue/index.js
+++ b/server/api/voiceQueue/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceQueue/voiceQueue.attributes.js b/server/api/voiceQueue/voiceQueue.attributes.js
index a836f7a..871c501 100644
--- a/server/api/voiceQueue/voiceQueue.attributes.js
+++ b/server/api/voiceQueue/voiceQueue.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceQueue/voiceQueue.controller.js b/server/api/voiceQueue/voiceQueue.controller.js
index e89ebeb..01f05e0 100644
--- a/server/api/voiceQueue/voiceQueue.controller.js
+++ b/server/api/voiceQueue/voiceQueue.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceQueue/voiceQueue.events.js b/server/api/voiceQueue/voiceQueue.events.js
index 6dc7d4b..5b1bcc9 100644
--- a/server/api/voiceQueue/voiceQueue.events.js
+++ b/server/api/voiceQueue/voiceQueue.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceQueue/voiceQueue.model.js b/server/api/voiceQueue/voiceQueue.model.js
index 01e906e..1068aba 100644
--- a/server/api/voiceQueue/voiceQueue.model.js
+++ b/server/api/voiceQueue/voiceQueue.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceQueue/voiceQueue.rpc.js b/server/api/voiceQueue/voiceQueue.rpc.js
index 0e9421e..3eeb010 100644
--- a/server/api/voiceQueue/voiceQueue.rpc.js
+++ b/server/api/voiceQueue/voiceQueue.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceQueue/voiceQueue.socket.js b/server/api/voiceQueue/voiceQueue.socket.js
index 41b5e03..637856c 100644
--- a/server/api/voiceQueue/voiceQueue.socket.js
+++ b/server/api/voiceQueue/voiceQueue.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceQueueReport/index.js b/server/api/voiceQueueReport/index.js
index 73ed045..04c967e 100644
--- a/server/api/voiceQueueReport/index.js
+++ b/server/api/voiceQueueReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceQueueReport/voiceQueueReport.attributes.js b/server/api/voiceQueueReport/voiceQueueReport.attributes.js
index d8bfd33..389fc6c 100644
--- a/server/api/voiceQueueReport/voiceQueueReport.attributes.js
+++ b/server/api/voiceQueueReport/voiceQueueReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceQueueReport/voiceQueueReport.controller.js b/server/api/voiceQueueReport/voiceQueueReport.controller.js
index 96a2076..183a947 100644
--- a/server/api/voiceQueueReport/voiceQueueReport.controller.js
+++ b/server/api/voiceQueueReport/voiceQueueReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceQueueReport/voiceQueueReport.events.js b/server/api/voiceQueueReport/voiceQueueReport.events.js
index b49d66d..af71e1b 100644
--- a/server/api/voiceQueueReport/voiceQueueReport.events.js
+++ b/server/api/voiceQueueReport/voiceQueueReport.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceQueueReport/voiceQueueReport.model.js b/server/api/voiceQueueReport/voiceQueueReport.model.js
index 29d4493..4ae8135 100644
--- a/server/api/voiceQueueReport/voiceQueueReport.model.js
+++ b/server/api/voiceQueueReport/voiceQueueReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceQueueReport/voiceQueueReport.rpc.js b/server/api/voiceQueueReport/voiceQueueReport.rpc.js
index 3627086..b22a52b 100644
--- a/server/api/voiceQueueReport/voiceQueueReport.rpc.js
+++ b/server/api/voiceQueueReport/voiceQueueReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceQueueReport/voiceQueueReport.socket.js b/server/api/voiceQueueReport/voiceQueueReport.socket.js
index c2bf776..46523e1 100644
--- a/server/api/voiceQueueReport/voiceQueueReport.socket.js
+++ b/server/api/voiceQueueReport/voiceQueueReport.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceQueuesLog/index.js b/server/api/voiceQueuesLog/index.js
index a2c1745..041fc6b 100644
--- a/server/api/voiceQueuesLog/index.js
+++ b/server/api/voiceQueuesLog/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceQueuesLog/voiceQueuesLog.attributes.js b/server/api/voiceQueuesLog/voiceQueuesLog.attributes.js
index 63b5646..7874341 100644
--- a/server/api/voiceQueuesLog/voiceQueuesLog.attributes.js
+++ b/server/api/voiceQueuesLog/voiceQueuesLog.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceQueuesLog/voiceQueuesLog.controller.js b/server/api/voiceQueuesLog/voiceQueuesLog.controller.js
index 80c27b6..77edd86 100644
--- a/server/api/voiceQueuesLog/voiceQueuesLog.controller.js
+++ b/server/api/voiceQueuesLog/voiceQueuesLog.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceQueuesLog/voiceQueuesLog.model.js b/server/api/voiceQueuesLog/voiceQueuesLog.model.js
index a84b043..646003d 100644
--- a/server/api/voiceQueuesLog/voiceQueuesLog.model.js
+++ b/server/api/voiceQueuesLog/voiceQueuesLog.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceQueuesLog/voiceQueuesLog.rpc.js b/server/api/voiceQueuesLog/voiceQueuesLog.rpc.js
index 3470b8a..d69b4c0 100644
--- a/server/api/voiceQueuesLog/voiceQueuesLog.rpc.js
+++ b/server/api/voiceQueuesLog/voiceQueuesLog.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceRecording/index.js b/server/api/voiceRecording/index.js
index 106dd33..95a4877 100644
--- a/server/api/voiceRecording/index.js
+++ b/server/api/voiceRecording/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceRecording/voiceRecording.attributes.js b/server/api/voiceRecording/voiceRecording.attributes.js
index 03243a5..2c2b523 100644
--- a/server/api/voiceRecording/voiceRecording.attributes.js
+++ b/server/api/voiceRecording/voiceRecording.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceRecording/voiceRecording.controller.js b/server/api/voiceRecording/voiceRecording.controller.js
index a5277cb..d444787 100644
--- a/server/api/voiceRecording/voiceRecording.controller.js
+++ b/server/api/voiceRecording/voiceRecording.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceRecording/voiceRecording.model.js b/server/api/voiceRecording/voiceRecording.model.js
index ec8f7c9..5ee6849 100644
--- a/server/api/voiceRecording/voiceRecording.model.js
+++ b/server/api/voiceRecording/voiceRecording.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceRecording/voiceRecording.rpc.js b/server/api/voiceRecording/voiceRecording.rpc.js
index 7d4d062..a2e05cb 100644
--- a/server/api/voiceRecording/voiceRecording.rpc.js
+++ b/server/api/voiceRecording/voiceRecording.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceTransferReport/index.js b/server/api/voiceTransferReport/index.js
index 89bbc95..5d8ec46 100644
--- a/server/api/voiceTransferReport/index.js
+++ b/server/api/voiceTransferReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceTransferReport/voiceTransferReport.attributes.js b/server/api/voiceTransferReport/voiceTransferReport.attributes.js
index 757e324..4b3a7e9 100644
--- a/server/api/voiceTransferReport/voiceTransferReport.attributes.js
+++ b/server/api/voiceTransferReport/voiceTransferReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceTransferReport/voiceTransferReport.controller.js b/server/api/voiceTransferReport/voiceTransferReport.controller.js
index 28e7385..6667fd0 100644
--- a/server/api/voiceTransferReport/voiceTransferReport.controller.js
+++ b/server/api/voiceTransferReport/voiceTransferReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceTransferReport/voiceTransferReport.model.js b/server/api/voiceTransferReport/voiceTransferReport.model.js
index a7a9bf5..003b6cc 100644
--- a/server/api/voiceTransferReport/voiceTransferReport.model.js
+++ b/server/api/voiceTransferReport/voiceTransferReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/voiceTransferReport/voiceTransferReport.rpc.js b/server/api/voiceTransferReport/voiceTransferReport.rpc.js
index f0625d7..fa66a80 100644
--- a/server/api/voiceTransferReport/voiceTransferReport.rpc.js
+++ b/server/api/voiceTransferReport/voiceTransferReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/webbar/index.js b/server/api/webbar/index.js
index b569053..d96269d 100644
--- a/server/api/webbar/index.js
+++ b/server/api/webbar/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/webbar/webbar.controller.js b/server/api/webbar/webbar.controller.js
index 8b4be86..3269e8b 100644
--- a/server/api/webbar/webbar.controller.js
+++ b/server/api/webbar/webbar.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappAccount/index.js b/server/api/whatsappAccount/index.js
index aea1637..d830abb 100644
--- a/server/api/whatsappAccount/index.js
+++ b/server/api/whatsappAccount/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappAccount/whatsappAccount.attributes.js b/server/api/whatsappAccount/whatsappAccount.attributes.js
index f7b51dd..eea6892 100644
--- a/server/api/whatsappAccount/whatsappAccount.attributes.js
+++ b/server/api/whatsappAccount/whatsappAccount.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappAccount/whatsappAccount.controller.js b/server/api/whatsappAccount/whatsappAccount.controller.js
index c25d7ea..1a8cef2 100644
--- a/server/api/whatsappAccount/whatsappAccount.controller.js
+++ b/server/api/whatsappAccount/whatsappAccount.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappAccount/whatsappAccount.events.js b/server/api/whatsappAccount/whatsappAccount.events.js
index aa11975..c6b48ee 100644
--- a/server/api/whatsappAccount/whatsappAccount.events.js
+++ b/server/api/whatsappAccount/whatsappAccount.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappAccount/whatsappAccount.model.js b/server/api/whatsappAccount/whatsappAccount.model.js
index 6559cc2..291b1b1 100644
--- a/server/api/whatsappAccount/whatsappAccount.model.js
+++ b/server/api/whatsappAccount/whatsappAccount.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappAccount/whatsappAccount.rpc.js b/server/api/whatsappAccount/whatsappAccount.rpc.js
index f3393a8..4fb2563 100644
--- a/server/api/whatsappAccount/whatsappAccount.rpc.js
+++ b/server/api/whatsappAccount/whatsappAccount.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappAccount/whatsappAccount.socket.js b/server/api/whatsappAccount/whatsappAccount.socket.js
index dc9d079..c8a2e67 100644
--- a/server/api/whatsappAccount/whatsappAccount.socket.js
+++ b/server/api/whatsappAccount/whatsappAccount.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappApplication/index.js b/server/api/whatsappApplication/index.js
index 9ae34df..0edb08f 100644
--- a/server/api/whatsappApplication/index.js
+++ b/server/api/whatsappApplication/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappApplication/whatsappApplication.attributes.js b/server/api/whatsappApplication/whatsappApplication.attributes.js
index 668e251..63144d4 100644
--- a/server/api/whatsappApplication/whatsappApplication.attributes.js
+++ b/server/api/whatsappApplication/whatsappApplication.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappApplication/whatsappApplication.controller.js b/server/api/whatsappApplication/whatsappApplication.controller.js
index 35eee1a..e0734a0 100644
--- a/server/api/whatsappApplication/whatsappApplication.controller.js
+++ b/server/api/whatsappApplication/whatsappApplication.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappApplication/whatsappApplication.model.js b/server/api/whatsappApplication/whatsappApplication.model.js
index 3c0b21a..f40a1d5 100644
--- a/server/api/whatsappApplication/whatsappApplication.model.js
+++ b/server/api/whatsappApplication/whatsappApplication.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappApplication/whatsappApplication.rpc.js b/server/api/whatsappApplication/whatsappApplication.rpc.js
index b12e3ce..e445138 100644
--- a/server/api/whatsappApplication/whatsappApplication.rpc.js
+++ b/server/api/whatsappApplication/whatsappApplication.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappInteraction/index.js b/server/api/whatsappInteraction/index.js
index a060961..66a8f65 100644
--- a/server/api/whatsappInteraction/index.js
+++ b/server/api/whatsappInteraction/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappInteraction/whatsappInteraction.attributes.js b/server/api/whatsappInteraction/whatsappInteraction.attributes.js
index 79f40a0..90a356c 100644
--- a/server/api/whatsappInteraction/whatsappInteraction.attributes.js
+++ b/server/api/whatsappInteraction/whatsappInteraction.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappInteraction/whatsappInteraction.controller.js b/server/api/whatsappInteraction/whatsappInteraction.controller.js
index 53b3d21..701ab91 100644
--- a/server/api/whatsappInteraction/whatsappInteraction.controller.js
+++ b/server/api/whatsappInteraction/whatsappInteraction.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappInteraction/whatsappInteraction.events.js b/server/api/whatsappInteraction/whatsappInteraction.events.js
index d4c7cc2..fb6a154 100644
--- a/server/api/whatsappInteraction/whatsappInteraction.events.js
+++ b/server/api/whatsappInteraction/whatsappInteraction.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappInteraction/whatsappInteraction.model.js b/server/api/whatsappInteraction/whatsappInteraction.model.js
index 69b8b27..a7391c8 100644
--- a/server/api/whatsappInteraction/whatsappInteraction.model.js
+++ b/server/api/whatsappInteraction/whatsappInteraction.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappInteraction/whatsappInteraction.rpc.js b/server/api/whatsappInteraction/whatsappInteraction.rpc.js
index 8bcb4f0..6eefbaa 100644
--- a/server/api/whatsappInteraction/whatsappInteraction.rpc.js
+++ b/server/api/whatsappInteraction/whatsappInteraction.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappInteraction/whatsappInteraction.socket.js b/server/api/whatsappInteraction/whatsappInteraction.socket.js
index ae06469..697b8bb 100644
--- a/server/api/whatsappInteraction/whatsappInteraction.socket.js
+++ b/server/api/whatsappInteraction/whatsappInteraction.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappMessage/index.js b/server/api/whatsappMessage/index.js
index 2c5d680..781b32e 100644
--- a/server/api/whatsappMessage/index.js
+++ b/server/api/whatsappMessage/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappMessage/whatsappMessage.attributes.js b/server/api/whatsappMessage/whatsappMessage.attributes.js
index b8a3fd7..c455d1c 100644
--- a/server/api/whatsappMessage/whatsappMessage.attributes.js
+++ b/server/api/whatsappMessage/whatsappMessage.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappMessage/whatsappMessage.controller.js b/server/api/whatsappMessage/whatsappMessage.controller.js
index 2655d3a..ad1fcba 100644
--- a/server/api/whatsappMessage/whatsappMessage.controller.js
+++ b/server/api/whatsappMessage/whatsappMessage.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappMessage/whatsappMessage.events.js b/server/api/whatsappMessage/whatsappMessage.events.js
index fbaabce..15f5680 100644
--- a/server/api/whatsappMessage/whatsappMessage.events.js
+++ b/server/api/whatsappMessage/whatsappMessage.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappMessage/whatsappMessage.model.js b/server/api/whatsappMessage/whatsappMessage.model.js
index 8b02823..3eb5904 100644
--- a/server/api/whatsappMessage/whatsappMessage.model.js
+++ b/server/api/whatsappMessage/whatsappMessage.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappMessage/whatsappMessage.rpc.js b/server/api/whatsappMessage/whatsappMessage.rpc.js
index 644de8c..d6fb296 100644
--- a/server/api/whatsappMessage/whatsappMessage.rpc.js
+++ b/server/api/whatsappMessage/whatsappMessage.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappMessage/whatsappMessage.socket.js b/server/api/whatsappMessage/whatsappMessage.socket.js
index c4ba0c1..ca54885 100644
--- a/server/api/whatsappMessage/whatsappMessage.socket.js
+++ b/server/api/whatsappMessage/whatsappMessage.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappQueue/index.js b/server/api/whatsappQueue/index.js
index 5d57cb9..1499ebc 100644
--- a/server/api/whatsappQueue/index.js
+++ b/server/api/whatsappQueue/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappQueue/whatsappQueue.attributes.js b/server/api/whatsappQueue/whatsappQueue.attributes.js
index 4982feb..a162f8a 100644
--- a/server/api/whatsappQueue/whatsappQueue.attributes.js
+++ b/server/api/whatsappQueue/whatsappQueue.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappQueue/whatsappQueue.controller.js b/server/api/whatsappQueue/whatsappQueue.controller.js
index 634ccf5..ee74ce8 100644
--- a/server/api/whatsappQueue/whatsappQueue.controller.js
+++ b/server/api/whatsappQueue/whatsappQueue.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappQueue/whatsappQueue.events.js b/server/api/whatsappQueue/whatsappQueue.events.js
index 66b703e..ca79389 100644
--- a/server/api/whatsappQueue/whatsappQueue.events.js
+++ b/server/api/whatsappQueue/whatsappQueue.events.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappQueue/whatsappQueue.model.js b/server/api/whatsappQueue/whatsappQueue.model.js
index a18fec3..a5c20bf 100644
--- a/server/api/whatsappQueue/whatsappQueue.model.js
+++ b/server/api/whatsappQueue/whatsappQueue.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappQueue/whatsappQueue.rpc.js b/server/api/whatsappQueue/whatsappQueue.rpc.js
index 3688af7..55f5373 100644
--- a/server/api/whatsappQueue/whatsappQueue.rpc.js
+++ b/server/api/whatsappQueue/whatsappQueue.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappQueue/whatsappQueue.socket.js b/server/api/whatsappQueue/whatsappQueue.socket.js
index ac25c85..6addf6f 100644
--- a/server/api/whatsappQueue/whatsappQueue.socket.js
+++ b/server/api/whatsappQueue/whatsappQueue.socket.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappQueueReport/index.js b/server/api/whatsappQueueReport/index.js
index cda530e..8dd2092 100644
--- a/server/api/whatsappQueueReport/index.js
+++ b/server/api/whatsappQueueReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappQueueReport/whatsappQueueReport.attributes.js b/server/api/whatsappQueueReport/whatsappQueueReport.attributes.js
index 07247d4..1ab3e05 100644
--- a/server/api/whatsappQueueReport/whatsappQueueReport.attributes.js
+++ b/server/api/whatsappQueueReport/whatsappQueueReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappQueueReport/whatsappQueueReport.controller.js b/server/api/whatsappQueueReport/whatsappQueueReport.controller.js
index 61521fd..beeef96 100644
--- a/server/api/whatsappQueueReport/whatsappQueueReport.controller.js
+++ b/server/api/whatsappQueueReport/whatsappQueueReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappQueueReport/whatsappQueueReport.model.js b/server/api/whatsappQueueReport/whatsappQueueReport.model.js
index 85a7c80..08a4eea 100644
--- a/server/api/whatsappQueueReport/whatsappQueueReport.model.js
+++ b/server/api/whatsappQueueReport/whatsappQueueReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappQueueReport/whatsappQueueReport.rpc.js b/server/api/whatsappQueueReport/whatsappQueueReport.rpc.js
index 68dddf1..44e900c 100644
--- a/server/api/whatsappQueueReport/whatsappQueueReport.rpc.js
+++ b/server/api/whatsappQueueReport/whatsappQueueReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappTransferReport/index.js b/server/api/whatsappTransferReport/index.js
index fb088be..ab076d5 100644
--- a/server/api/whatsappTransferReport/index.js
+++ b/server/api/whatsappTransferReport/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappTransferReport/whatsappTransferReport.attributes.js b/server/api/whatsappTransferReport/whatsappTransferReport.attributes.js
index b410568..bfc85f2 100644
--- a/server/api/whatsappTransferReport/whatsappTransferReport.attributes.js
+++ b/server/api/whatsappTransferReport/whatsappTransferReport.attributes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappTransferReport/whatsappTransferReport.controller.js b/server/api/whatsappTransferReport/whatsappTransferReport.controller.js
index 6e442a2..ec3dbf5 100644
--- a/server/api/whatsappTransferReport/whatsappTransferReport.controller.js
+++ b/server/api/whatsappTransferReport/whatsappTransferReport.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappTransferReport/whatsappTransferReport.model.js b/server/api/whatsappTransferReport/whatsappTransferReport.model.js
index de90117..df618c4 100644
--- a/server/api/whatsappTransferReport/whatsappTransferReport.model.js
+++ b/server/api/whatsappTransferReport/whatsappTransferReport.model.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/api/whatsappTransferReport/whatsappTransferReport.rpc.js b/server/api/whatsappTransferReport/whatsappTransferReport.rpc.js
index aeb3c51..676fb5a 100644
--- a/server/api/whatsappTransferReport/whatsappTransferReport.rpc.js
+++ b/server/api/whatsappTransferReport/whatsappTransferReport.rpc.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/app.js b/server/app.js
index d3fbbb5..b09764e 100644
--- a/server/app.js
+++ b/server/app.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/components/auth/service.js b/server/components/auth/service.js
index a2382f8..7270550 100644
--- a/server/components/auth/service.js
+++ b/server/components/auth/service.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/components/encryptor/index.js b/server/components/encryptor/index.js
index e5e60f4..3e7697d 100644
--- a/server/components/encryptor/index.js
+++ b/server/components/encryptor/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/components/export/csv.js b/server/components/export/csv.js
index 9273fd9..7b54f7b 100644
--- a/server/components/export/csv.js
+++ b/server/components/export/csv.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/components/export/pdf.js b/server/components/export/pdf.js
index 69f6bcb..23eebab 100644
--- a/server/components/export/pdf.js
+++ b/server/components/export/pdf.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/components/export/xlsx.js b/server/components/export/xlsx.js
index 918deee..5f84c99 100644
--- a/server/components/export/xlsx.js
+++ b/server/components/export/xlsx.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/components/extensions/rewrite.js b/server/components/extensions/rewrite.js
index efc0ef0..292b177 100644
--- a/server/components/extensions/rewrite.js
+++ b/server/components/extensions/rewrite.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/components/import/cm/csv.js b/server/components/import/cm/csv.js
index d6d9d7c..a4956c1 100644
--- a/server/components/import/cm/csv.js
+++ b/server/components/import/cm/csv.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/components/import/cm/csv2.js b/server/components/import/cm/csv2.js
index 5161be6..cebef0f 100644
--- a/server/components/import/cm/csv2.js
+++ b/server/components/import/cm/csv2.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/components/integrations/configuration.js b/server/components/integrations/configuration.js
index 12d5504..8276bb9 100644
--- a/server/components/integrations/configuration.js
+++ b/server/components/integrations/configuration.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/components/interaction/service.js b/server/components/interaction/service.js
index d7853c2..d56cd3d 100644
--- a/server/components/interaction/service.js
+++ b/server/components/interaction/service.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/components/license/service.js b/server/components/license/service.js
index b699e0b..dca1253 100644
--- a/server/components/license/service.js
+++ b/server/components/license/service.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/components/parsers/advancedSearch.js b/server/components/parsers/advancedSearch.js
index 4c111ab..94acecf 100644
--- a/server/components/parsers/advancedSearch.js
+++ b/server/components/parsers/advancedSearch.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/components/parsers/qs.js b/server/components/parsers/qs.js
index 34c0d1b..8b477ef 100644
--- a/server/components/parsers/qs.js
+++ b/server/components/parsers/qs.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/config/environment/development.js b/server/config/environment/development.js
index e86a0b9..30f27f6 100644
--- a/server/config/environment/development.js
+++ b/server/config/environment/development.js
@@ -13,7 +13,7 @@ module.exports = {
     username: 'xcall',
     password: 'xC@LL1234',
     options: {
-      host: '127.0.0.1',
+      host: '192.168.1.204',
       port: 3306,
       dialect: 'mysql',
       dialectOptions: {
@@ -32,7 +32,7 @@ module.exports = {
     username: 'xcall',
     password: 'xC@LL1234',
     options: {
-      host: '127.0.0.1',
+      host: '192.168.1.204',
       port: 3306,
       dialect: 'mysql',
       dialectOptions: {
@@ -47,7 +47,7 @@ module.exports = {
     }
   },
   asterisk: {
-    ip: '127.0.0.1',
+    ip: '192.168.1.204',
     port: '5038',
     username: 'xcall',
     password: 'xcall1234'
diff --git a/server/config/express.js b/server/config/express.js
index fb9ec4c..50611d9 100644
--- a/server/config/express.js
+++ b/server/config/express.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/config/license/hardware.js b/server/config/license/hardware.js
index 40d47fc..06e0fd1 100644
--- a/server/config/license/hardware.js
+++ b/server/config/license/hardware.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/config/license/index.js b/server/config/license/index.js
index 012868d..7f12d86 100644
--- a/server/config/license/index.js
+++ b/server/config/license/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/config/license/util.js b/server/config/license/util.js
index fa8f564..eaee382 100644
--- a/server/config/license/util.js
+++ b/server/config/license/util.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/config/local.env.js b/server/config/local.env.js
index aad1ae7..da48e51 100644
--- a/server/config/local.env.js
+++ b/server/config/local.env.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
-var _0x10f8=['app-id','exports'];(function(_0x4583e6,_0x5817de){var _0x5673f5=function(_0x185967){while(--_0x185967){_0x4583e6['push'](_0x4583e6['shift']());}};_0x5673f5(++_0x5817de);}(_0x10f8,0x119));var _0x810f=function(_0x2ddea4,_0x3b4d83){_0x2ddea4=_0x2ddea4-0x0;var _0xb3eb2=_0x10f8[_0x2ddea4];return _0xb3eb2;};'use strict';module[_0x810f('0x0')]={'DOMAIN':'http://localhost:9000','SESSION_SECRET':'myappanuglar-secret','GOOGLE_ID':_0x810f('0x1'),'GOOGLE_SECRET':'secret','DEBUG':''};
\ No newline at end of file
\ No newline at end of file
diff --git a/server/config/logger.js b/server/config/logger.js
index bf2e195..fda606b 100644
--- a/server/config/logger.js
+++ b/server/config/logger.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/config/pm2/config.js b/server/config/pm2/config.js
index 13aa6d1..242fedf 100644
--- a/server/config/pm2/config.js
+++ b/server/config/pm2/config.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/config/pm2/index.js b/server/config/pm2/index.js
index 0813a51..e3a5cef 100644
--- a/server/config/pm2/index.js
+++ b/server/config/pm2/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/config/schedule/chat.js b/server/config/schedule/chat.js
index 6a3d90b..2984545 100644
--- a/server/config/schedule/chat.js
+++ b/server/config/schedule/chat.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/config/schedule/index.js b/server/config/schedule/index.js
index 869660b..eede967 100644
--- a/server/config/schedule/index.js
+++ b/server/config/schedule/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/config/schedule/transcribe.js b/server/config/schedule/transcribe.js
index 90b488d..2784c39 100644
--- a/server/config/schedule/transcribe.js
+++ b/server/config/schedule/transcribe.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/config/seedContact.js b/server/config/seedContact.js
index 8cdb114..f85d226 100644
--- a/server/config/seedContact.js
+++ b/server/config/seedContact.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/config/seedUsers.js b/server/config/seedUsers.js
index d7696f2..180b0e5 100644
--- a/server/config/seedUsers.js
+++ b/server/config/seedUsers.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/config/socketio.js b/server/config/socketio.js
index 28e52aa..edb6911 100644
--- a/server/config/socketio.js
+++ b/server/config/socketio.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/config/triggers/index.js b/server/config/triggers/index.js
index 63ee883..a5af6bc 100644
--- a/server/config/triggers/index.js
+++ b/server/config/triggers/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/config/utils.js b/server/config/utils.js
index 6099444..6c8e024 100644
--- a/server/config/utils.js
+++ b/server/config/utils.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/errors/index.js b/server/errors/index.js
index a48bcf8..f736cf1 100644
--- a/server/errors/index.js
+++ b/server/errors/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/files/attachments/1598272067460-Auto Generated Inline Image 1 b/server/files/attachments/1598272067460-Auto Generated Inline Image 1
new file mode 100644
index 0000000000000000000000000000000000000000..6f68a64c6373c0b5762b729b93e60096284f1375
GIT binary patch
literal 15665
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
E0o-N}Qvd(}

literal 0
HcmV?d00001

diff --git a/server/files/attachments/1598272067646-Auto Generated Inline Image 1 b/server/files/attachments/1598272067646-Auto Generated Inline Image 1
new file mode 100644
index 0000000000000000000000000000000000000000..6f68a64c6373c0b5762b729b93e60096284f1375
GIT binary patch
literal 15665
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
E0o-N}Qvd(}

literal 0
HcmV?d00001

diff --git a/server/files/attachments/1598272068853-Captura de pantalla 2020-08-14 a las 15.53.25.png b/server/files/attachments/1598272068853-Captura de pantalla 2020-08-14 a las 15.53.25.png
new file mode 100644
index 0000000000000000000000000000000000000000..183ee98ad5746385c9ce1fdc40e776d0c8af2951
GIT binary patch
literal 443861
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
U-*5Bi4)CM!Mn$Gf>b>9p10@8#1poj5

literal 0
HcmV?d00001

diff --git a/server/files/attachments/1598272068853-Captura de pantalla 2020-08-14 a las 15.57.11.png b/server/files/attachments/1598272068853-Captura de pantalla 2020-08-14 a las 15.57.11.png
new file mode 100644
index 0000000000000000000000000000000000000000..4d63c57c4a1b2e01a7257fd6fd20da52a3a4c3c6
GIT binary patch
literal 266109
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

literal 0
HcmV?d00001

diff --git a/server/files/attachments/1598360289779-Captura de pantalla 2020-08-25 a las 13.11.05.png b/server/files/attachments/1598360289779-Captura de pantalla 2020-08-25 a las 13.11.05.png
new file mode 100644
index 0000000000000000000000000000000000000000..b687e0670c162a3eb7a705a7f6285162c518131e
GIT binary patch
literal 291579
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
Om5XK<3jVqo_P+on#qnwY

literal 0
HcmV?d00001

diff --git a/server/files/attachments/1598880822925-Captura de pantalla 2020-08-25 a las 13.11.05.png b/server/files/attachments/1598880822925-Captura de pantalla 2020-08-25 a las 13.11.05.png
new file mode 100644
index 0000000000000000000000000000000000000000..b687e0670c162a3eb7a705a7f6285162c518131e
GIT binary patch
literal 291579
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
Om5XK<3jVqo_P+on#qnwY

literal 0
HcmV?d00001

diff --git a/server/files/attachments/1598880823352-Captura de pantalla 2020-08-25 a las 13.11.05.png b/server/files/attachments/1598880823352-Captura de pantalla 2020-08-25 a las 13.11.05.png
new file mode 100644
index 0000000000000000000000000000000000000000..b687e0670c162a3eb7a705a7f6285162c518131e
GIT binary patch
literal 291579
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
Om5XK<3jVqo_P+on#qnwY

literal 0
HcmV?d00001

diff --git a/server/files/attachments/1598880823781-Captura de pantalla 2020-08-25 a las 13.11.05.png b/server/files/attachments/1598880823781-Captura de pantalla 2020-08-25 a las 13.11.05.png
new file mode 100644
index 0000000000000000000000000000000000000000..b687e0670c162a3eb7a705a7f6285162c518131e
GIT binary patch
literal 291579
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
Om5XK<3jVqo_P+on#qnwY

literal 0
HcmV?d00001

diff --git "a/server/files/attachments/1599641893212-\345\276\256\344\277\241\345\233\276\347\211\207_20200909165537.png" "b/server/files/attachments/1599641893212-\345\276\256\344\277\241\345\233\276\347\211\207_20200909165537.png"
new file mode 100644
index 0000000000000000000000000000000000000000..48f58a8efcb550e063fa0f2b6cbbd424d51024b8
GIT binary patch
literal 207861
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%0D(O&Gd2P<VAhA^%H
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

literal 0
HcmV?d00001

diff --git "a/server/files/attachments/1599642703731-\345\276\256\344\277\241\345\233\276\347\211\207_20200909165537.png" "b/server/files/attachments/1599642703731-\345\276\256\344\277\241\345\233\276\347\211\207_20200909165537.png"
new file mode 100644
index 0000000000000000000000000000000000000000..48f58a8efcb550e063fa0f2b6cbbd424d51024b8
GIT binary patch
literal 207861
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%0D(O&Gd2P<VAhA^%H
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

literal 0
HcmV?d00001

diff --git a/server/mysqldb/index.js b/server/mysqldb/index.js
index 1c469ed..629a6dd 100644
--- a/server/mysqldb/index.js
+++ b/server/mysqldb/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/routes.js b/server/routes.js
index 95f0b66..34862e5 100644
--- a/server/routes.js
+++ b/server/routes.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/rpc/index.js b/server/rpc/index.js
index a83702d..ade1d60 100644
--- a/server/rpc/index.js
+++ b/server/rpc/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/agi/channel.js b/server/services/agi/channel.js
index df145d0..c79f13c 100644
--- a/server/services/agi/channel.js
+++ b/server/services/agi/channel.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/agi/error.js b/server/services/agi/error.js
index 8010816..c7f22e1 100644
--- a/server/services/agi/error.js
+++ b/server/services/agi/error.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/agi/graph/index.js b/server/services/agi/graph/index.js
index 538f12c..4a879ca 100644
--- a/server/services/agi/graph/index.js
+++ b/server/services/agi/graph/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/agi/index.js b/server/services/agi/index.js
index 4a36447..d52b1ac 100644
--- a/server/services/agi/index.js
+++ b/server/services/agi/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/agi/mailRpc/index.js b/server/services/agi/mailRpc/index.js
index 088674e..0a3a1f7 100644
--- a/server/services/agi/mailRpc/index.js
+++ b/server/services/agi/mailRpc/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/agi/reply.js b/server/services/agi/reply.js
index 465b819..5c5dfbd 100644
--- a/server/services/agi/reply.js
+++ b/server/services/agi/reply.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/agi/rpc/index.js b/server/services/agi/rpc/index.js
index 1dcfbb8..79eb7d3 100644
--- a/server/services/agi/rpc/index.js
+++ b/server/services/agi/rpc/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/agi/scripts/aws/index.js b/server/services/agi/scripts/aws/index.js
index e22c5fd..d4cd82d 100644
--- a/server/services/agi/scripts/aws/index.js
+++ b/server/services/agi/scripts/aws/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
-var _0xd0bb=['./lex','exports','./polly'];(function(_0x59d0cc,_0xa7c52b){var _0x2ae79f=function(_0x33042e){while(--_0x33042e){_0x59d0cc['push'](_0x59d0cc['shift']());}};_0x2ae79f(++_0xa7c52b);}(_0xd0bb,0x1eb));var _0xbd0b=function(_0x5630db,_0x176962){_0x5630db=_0x5630db-0x0;var _0x2c40a6=_0xd0bb[_0x5630db];return _0x2c40a6;};var polly=require(_0xbd0b('0x0'));var lex=require(_0xbd0b('0x1'));module[_0xbd0b('0x2')]={'polly':polly,'lex':lex};
\ No newline at end of file
+var _0xa41a=['./lex','./polly'];(function(_0x2f6d0d,_0x12fbba){var _0x42817e=function(_0x1ab268){while(--_0x1ab268){_0x2f6d0d['push'](_0x2f6d0d['shift']());}};_0x42817e(++_0x12fbba);}(_0xa41a,0x6b));var _0xaa41=function(_0x43138d,_0x1562f7){_0x43138d=_0x43138d-0x0;var _0x766047=_0xa41a[_0x43138d];return _0x766047;};var polly=require(_0xaa41('0x0'));var lex=require(_0xaa41('0x1'));module['exports']={'polly':polly,'lex':lex};
\ No newline at end of file
diff --git a/server/services/agi/scripts/aws/lex/index.js b/server/services/agi/scripts/aws/lex/index.js
index 89c1bff..919712d 100644
--- a/server/services/agi/scripts/aws/lex/index.js
+++ b/server/services/agi/scripts/aws/lex/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/agi/scripts/aws/lex/lib/api.js b/server/services/agi/scripts/aws/lex/lib/api.js
index 89f0a9d..dada16d 100644
--- a/server/services/agi/scripts/aws/lex/lib/api.js
+++ b/server/services/agi/scripts/aws/lex/lib/api.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/agi/scripts/aws/polly/index.js b/server/services/agi/scripts/aws/polly/index.js
index eb6e4b4..f445984 100644
--- a/server/services/agi/scripts/aws/polly/index.js
+++ b/server/services/agi/scripts/aws/polly/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/agi/scripts/aws/polly/lib/api.js b/server/services/agi/scripts/aws/polly/lib/api.js
index 51164bb..7c5107a 100644
--- a/server/services/agi/scripts/aws/polly/lib/api.js
+++ b/server/services/agi/scripts/aws/polly/lib/api.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/agi/scripts/google/asr/index.js b/server/services/agi/scripts/google/asr/index.js
index 71c896d..a6dd70d 100644
--- a/server/services/agi/scripts/google/asr/index.js
+++ b/server/services/agi/scripts/google/asr/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
-var _0xef14=['./lib/api','exports'];(function(_0x2bcc4a,_0x1b37a6){var _0x244e83=function(_0x5f14cf){while(--_0x5f14cf){_0x2bcc4a['push'](_0x2bcc4a['shift']());}};_0x244e83(++_0x1b37a6);}(_0xef14,0x1d8));var _0x4ef1=function(_0x5393c5,_0x63fae2){_0x5393c5=_0x5393c5-0x0;var _0x28b4d8=_0xef14[_0x5393c5];return _0x28b4d8;};'use strict';var asr=require(_0x4ef1('0x0'));module[_0x4ef1('0x1')]=function(_0x4588c1,_0xafed50,_0x522b57,_0x202082){return asr(_0x4588c1,_0xafed50,_0x522b57);};
\ No newline at end of file
+var _0x321b=['./lib/api','exports'];(function(_0x56a7c6,_0x62ef87){var _0x4fef9a=function(_0x2a81ae){while(--_0x2a81ae){_0x56a7c6['push'](_0x56a7c6['shift']());}};_0x4fef9a(++_0x62ef87);}(_0x321b,0x158));var _0xb321=function(_0x413fa8,_0x3483c5){_0x413fa8=_0x413fa8-0x0;var _0x5a763e=_0x321b[_0x413fa8];return _0x5a763e;};'use strict';var asr=require(_0xb321('0x0'));module[_0xb321('0x1')]=function(_0x3405eb,_0x2ffea2,_0x2f3db9,_0x38a40e){return asr(_0x3405eb,_0x2ffea2,_0x2f3db9);};
\ No newline at end of file
diff --git a/server/services/agi/scripts/google/asr/lib/api.js b/server/services/agi/scripts/google/asr/lib/api.js
index 6e83ae2..aaf6d1e 100644
--- a/server/services/agi/scripts/google/asr/lib/api.js
+++ b/server/services/agi/scripts/google/asr/lib/api.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/agi/scripts/google/index.js b/server/services/agi/scripts/google/index.js
index 38de91d..4f9b7e9 100644
--- a/server/services/agi/scripts/google/index.js
+++ b/server/services/agi/scripts/google/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
-var _0x1267=['exports','./asr'];(function(_0x5ee823,_0x24650b){var _0x209bd2=function(_0xa72379){while(--_0xa72379){_0x5ee823['push'](_0x5ee823['shift']());}};_0x209bd2(++_0x24650b);}(_0x1267,0xb5));var _0x7126=function(_0x3828e4,_0x785066){_0x3828e4=_0x3828e4-0x0;var _0x1e5339=_0x1267[_0x3828e4];return _0x1e5339;};var asr=require(_0x7126('0x0'));module[_0x7126('0x1')]={'asr':asr};
\ No newline at end of file
+var _0x3d3d=['exports'];(function(_0x5464f8,_0x360877){var _0x8f66da=function(_0x2ad0af){while(--_0x2ad0af){_0x5464f8['push'](_0x5464f8['shift']());}};_0x8f66da(++_0x360877);}(_0x3d3d,0xab));var _0xd3d3=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0x3d3d[_0x3dd15e];return _0x231fd0;};var asr=require('./asr');module[_0xd3d3('0x0')]={'asr':asr};
\ No newline at end of file
diff --git a/server/services/agi/scripts/index.js b/server/services/agi/scripts/index.js
index 845c3f1..70ec430 100644
--- a/server/services/agi/scripts/index.js
+++ b/server/services/agi/scripts/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/agi/scripts/sestek/index.js b/server/services/agi/scripts/sestek/index.js
index 699d94e..244a385 100644
--- a/server/services/agi/scripts/sestek/index.js
+++ b/server/services/agi/scripts/sestek/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
-var _0x0c99=['exports','./nda'];(function(_0x5da398,_0x13a526){var _0x4db43a=function(_0x377646){while(--_0x377646){_0x5da398['push'](_0x5da398['shift']());}};_0x4db43a(++_0x13a526);}(_0x0c99,0xdb));var _0x90c9=function(_0x56ba92,_0xb3c986){_0x56ba92=_0x56ba92-0x0;var _0x8fe94d=_0x0c99[_0x56ba92];return _0x8fe94d;};var nda=require(_0x90c9('0x0'));module[_0x90c9('0x1')]={'nda':nda};
\ No newline at end of file
+var _0x9975=['exports'];(function(_0x3d9b23,_0x52894d){var _0xf22517=function(_0x1933d0){while(--_0x1933d0){_0x3d9b23['push'](_0x3d9b23['shift']());}};_0xf22517(++_0x52894d);}(_0x9975,0x8f));var _0x5997=function(_0x3528b0,_0x55a72b){_0x3528b0=_0x3528b0-0x0;var _0x3f11e0=_0x9975[_0x3528b0];return _0x3f11e0;};var nda=require('./nda');module[_0x5997('0x0')]={'nda':nda};
\ No newline at end of file
diff --git a/server/services/agi/scripts/sestek/nda/index.js b/server/services/agi/scripts/sestek/nda/index.js
index fb1c1f9..8340b85 100644
--- a/server/services/agi/scripts/sestek/nda/index.js
+++ b/server/services/agi/scripts/sestek/nda/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/agi/scripts/tilde/asr/index.js b/server/services/agi/scripts/tilde/asr/index.js
index 6c65e93..4b4dd90 100644
--- a/server/services/agi/scripts/tilde/asr/index.js
+++ b/server/services/agi/scripts/tilde/asr/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
-var _0x7235=['exports'];(function(_0x46aff0,_0x122890){var _0x9d78cf=function(_0x3f14cb){while(--_0x3f14cb){_0x46aff0['push'](_0x46aff0['shift']());}};_0x9d78cf(++_0x122890);}(_0x7235,0x1b7));var _0x5723=function(_0x5489cb,_0x593138){_0x5489cb=_0x5489cb-0x0;var _0x28cb9c=_0x7235[_0x5489cb];return _0x28cb9c;};'use strict';var asr=require('./lib/api');module[_0x5723('0x0')]=function(_0x5342de,_0x269261,_0xf52521,_0x39af5e){return asr(_0x5342de,_0x269261,_0xf52521,_0x39af5e);};
\ No newline at end of file
+var _0xa05c=['exports','./lib/api'];(function(_0x59e7e0,_0x3ec148){var _0x26b058=function(_0x212ee2){while(--_0x212ee2){_0x59e7e0['push'](_0x59e7e0['shift']());}};_0x26b058(++_0x3ec148);}(_0xa05c,0x167));var _0xca05=function(_0x2d3ce8,_0x3524ba){_0x2d3ce8=_0x2d3ce8-0x0;var _0x579bc4=_0xa05c[_0x2d3ce8];return _0x579bc4;};'use strict';var asr=require(_0xca05('0x0'));module[_0xca05('0x1')]=function(_0x35c496,_0x196b75,_0x24945f,_0x59fcfc){return asr(_0x35c496,_0x196b75,_0x24945f,_0x59fcfc);};
\ No newline at end of file
diff --git a/server/services/agi/scripts/tilde/asr/lib/api.js b/server/services/agi/scripts/tilde/asr/lib/api.js
index cbab7e9..8ce626b 100644
--- a/server/services/agi/scripts/tilde/asr/lib/api.js
+++ b/server/services/agi/scripts/tilde/asr/lib/api.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/agi/scripts/tilde/index.js b/server/services/agi/scripts/tilde/index.js
index 6d9ef7e..fd6e06a 100644
--- a/server/services/agi/scripts/tilde/index.js
+++ b/server/services/agi/scripts/tilde/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
-var _0x1aac=['./asr','exports'];(function(_0x53a7af,_0x1408a5){var _0x3cc7f6=function(_0x4bf101){while(--_0x4bf101){_0x53a7af['push'](_0x53a7af['shift']());}};_0x3cc7f6(++_0x1408a5);}(_0x1aac,0xca));var _0xc1aa=function(_0x550228,_0x4b49d3){_0x550228=_0x550228-0x0;var _0x17b424=_0x1aac[_0x550228];return _0x17b424;};var asr=require(_0xc1aa('0x0'));module[_0xc1aa('0x1')]={'asr':asr};
\ No newline at end of file
+var _0x3134=['./asr'];(function(_0x584399,_0x4775bd){var _0x524bcd=function(_0x3030eb){while(--_0x3030eb){_0x584399['push'](_0x584399['shift']());}};_0x524bcd(++_0x4775bd);}(_0x3134,0x99));var _0x4313=function(_0x5afdf7,_0x52f885){_0x5afdf7=_0x5afdf7-0x0;var _0x714c35=_0x3134[_0x5afdf7];return _0x714c35;};var asr=require(_0x4313('0x0'));module['exports']={'asr':asr};
\ No newline at end of file
diff --git a/server/services/agi/server.js b/server/services/agi/server.js
index cf519ad..02794ee 100644
--- a/server/services/agi/server.js
+++ b/server/services/agi/server.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/agi/vertices.js b/server/services/agi/vertices.js
index 117c5f1..df28879 100644
--- a/server/services/agi/vertices.js
+++ b/server/services/agi/vertices.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/acw/index.js b/server/services/ami/acw/index.js
index f2f2074..4f50352 100644
--- a/server/services/ami/acw/index.js
+++ b/server/services/ami/acw/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/ami.js b/server/services/ami/ami.js
index 724276e..2dcf4c7 100644
--- a/server/services/ami/ami.js
+++ b/server/services/ami/ami.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/client.js b/server/services/ami/client.js
index 8ccb442..0edaf82 100644
--- a/server/services/ami/client.js
+++ b/server/services/ami/client.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/dialer/action.js b/server/services/ami/dialer/action.js
index 3e64c07..57e4b5c 100644
--- a/server/services/ami/dialer/action.js
+++ b/server/services/ami/dialer/action.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/dialer/agentComplete.js b/server/services/ami/dialer/agentComplete.js
index c705f7a..2d65f37 100644
--- a/server/services/ami/dialer/agentComplete.js
+++ b/server/services/ami/dialer/agentComplete.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/dialer/final.js b/server/services/ami/dialer/final.js
index b89f5fd..5944979 100644
--- a/server/services/ami/dialer/final.js
+++ b/server/services/ami/dialer/final.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/dialer/hangup.js b/server/services/ami/dialer/hangup.js
index b591c86..3d6ba0b 100644
--- a/server/services/ami/dialer/hangup.js
+++ b/server/services/ami/dialer/hangup.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/dialer/history.js b/server/services/ami/dialer/history.js
index 790e039..cbc444d 100644
--- a/server/services/ami/dialer/history.js
+++ b/server/services/ami/dialer/history.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/dialer/index.js b/server/services/ami/dialer/index.js
index 7ab4912..44cd56c 100644
--- a/server/services/ami/dialer/index.js
+++ b/server/services/ami/dialer/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/dialer/queueCallerAbandon.js b/server/services/ami/dialer/queueCallerAbandon.js
index 7b12610..d16b0e7 100644
--- a/server/services/ami/dialer/queueCallerAbandon.js
+++ b/server/services/ami/dialer/queueCallerAbandon.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/fax/action.js b/server/services/ami/fax/action.js
index e599261..06d77b4 100644
--- a/server/services/ami/fax/action.js
+++ b/server/services/ami/fax/action.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/fax/index.js b/server/services/ami/fax/index.js
index f1d4470..7643cc4 100644
--- a/server/services/ami/fax/index.js
+++ b/server/services/ami/fax/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/fax/rpcDb.js b/server/services/ami/fax/rpcDb.js
index 271015f..b6c2f36 100644
--- a/server/services/ami/fax/rpcDb.js
+++ b/server/services/ami/fax/rpcDb.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/fax/util/gs.js b/server/services/ami/fax/util/gs.js
index 208d824..bfdef81 100644
--- a/server/services/ami/fax/util/gs.js
+++ b/server/services/ami/fax/util/gs.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/fax/util/util.js b/server/services/ami/fax/util/util.js
index 5963483..45d2c38 100644
--- a/server/services/ami/fax/util/util.js
+++ b/server/services/ami/fax/util/util.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/index.js b/server/services/ami/index.js
index ed444fe..719926b 100644
--- a/server/services/ami/index.js
+++ b/server/services/ami/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/model/agent.js b/server/services/ami/model/agent.js
index f37ab70..dab4310 100644
--- a/server/services/ami/model/agent.js
+++ b/server/services/ami/model/agent.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/model/campaign.js b/server/services/ami/model/campaign.js
index 5576b15..7f7f8bd 100644
--- a/server/services/ami/model/campaign.js
+++ b/server/services/ami/model/campaign.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/model/channel.js b/server/services/ami/model/channel.js
index 8bc5328..a869303 100644
--- a/server/services/ami/model/channel.js
+++ b/server/services/ami/model/channel.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/model/deskAccount.js b/server/services/ami/model/deskAccount.js
index 41d3f70..dd07f36 100644
--- a/server/services/ami/model/deskAccount.js
+++ b/server/services/ami/model/deskAccount.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/model/dynamics365Account.js b/server/services/ami/model/dynamics365Account.js
index e0dd75e..64b52d8 100644
--- a/server/services/ami/model/dynamics365Account.js
+++ b/server/services/ami/model/dynamics365Account.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/model/faxAccount.js b/server/services/ami/model/faxAccount.js
index a4f121a..309c5b7 100644
--- a/server/services/ami/model/faxAccount.js
+++ b/server/services/ami/model/faxAccount.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/model/freshdeskAccount.js b/server/services/ami/model/freshdeskAccount.js
index da4489f..bb7ff47 100644
--- a/server/services/ami/model/freshdeskAccount.js
+++ b/server/services/ami/model/freshdeskAccount.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/model/freshsalesAccount.js b/server/services/ami/model/freshsalesAccount.js
index 93f9681..ccd8116 100644
--- a/server/services/ami/model/freshsalesAccount.js
+++ b/server/services/ami/model/freshsalesAccount.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/model/queueReport.js b/server/services/ami/model/queueReport.js
index d774f61..77bd0e4 100644
--- a/server/services/ami/model/queueReport.js
+++ b/server/services/ami/model/queueReport.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/model/salesforceAccount.js b/server/services/ami/model/salesforceAccount.js
index d1f021b..49c878f 100644
--- a/server/services/ami/model/salesforceAccount.js
+++ b/server/services/ami/model/salesforceAccount.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/model/servicenowAccount.js b/server/services/ami/model/servicenowAccount.js
index 172321f..5cff876 100644
--- a/server/services/ami/model/servicenowAccount.js
+++ b/server/services/ami/model/servicenowAccount.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/model/sugarcrmAccount.js b/server/services/ami/model/sugarcrmAccount.js
index 396c2e0..9f60c6e 100644
--- a/server/services/ami/model/sugarcrmAccount.js
+++ b/server/services/ami/model/sugarcrmAccount.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/model/telephone.js b/server/services/ami/model/telephone.js
index e445dab..3f9aa09 100644
--- a/server/services/ami/model/telephone.js
+++ b/server/services/ami/model/telephone.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/model/template.js b/server/services/ami/model/template.js
index eddcb75..566abc1 100644
--- a/server/services/ami/model/template.js
+++ b/server/services/ami/model/template.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/model/trigger.js b/server/services/ami/model/trigger.js
index 6ca3b08..ae6ab89 100644
--- a/server/services/ami/model/trigger.js
+++ b/server/services/ami/model/trigger.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/model/trunk.js b/server/services/ami/model/trunk.js
index a758128..8cde7b5 100644
--- a/server/services/ami/model/trunk.js
+++ b/server/services/ami/model/trunk.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/model/voiceExtension.js b/server/services/ami/model/voiceExtension.js
index 80fcba2..56b189e 100644
--- a/server/services/ami/model/voiceExtension.js
+++ b/server/services/ami/model/voiceExtension.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/model/voiceQueue.js b/server/services/ami/model/voiceQueue.js
index df578ec..6fef80d 100644
--- a/server/services/ami/model/voiceQueue.js
+++ b/server/services/ami/model/voiceQueue.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/model/vtigerAccount.js b/server/services/ami/model/vtigerAccount.js
index d4e761d..afa4e40 100644
--- a/server/services/ami/model/vtigerAccount.js
+++ b/server/services/ami/model/vtigerAccount.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/model/zendeskAccount.js b/server/services/ami/model/zendeskAccount.js
index 0c18b6b..33f7d7d 100644
--- a/server/services/ami/model/zendeskAccount.js
+++ b/server/services/ami/model/zendeskAccount.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/model/zohoAccount.js b/server/services/ami/model/zohoAccount.js
index 1e368a3..00cc5ea 100644
--- a/server/services/ami/model/zohoAccount.js
+++ b/server/services/ami/model/zohoAccount.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/preview/action.js b/server/services/ami/preview/action.js
index 8e59648..b0553ce 100644
--- a/server/services/ami/preview/action.js
+++ b/server/services/ami/preview/action.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/preview/index.js b/server/services/ami/preview/index.js
index 311f1de..c264b4c 100644
--- a/server/services/ami/preview/index.js
+++ b/server/services/ami/preview/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/preview/rpcDb.js b/server/services/ami/preview/rpcDb.js
index e3c8e3a..323738a 100644
--- a/server/services/ami/preview/rpcDb.js
+++ b/server/services/ami/preview/rpcDb.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/preview/util/util.js b/server/services/ami/preview/util/util.js
index cbfcadd..fa1e969 100644
--- a/server/services/ami/preview/util/util.js
+++ b/server/services/ami/preview/util/util.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/properties.js b/server/services/ami/properties.js
index 5ce4976..3f38a39 100644
--- a/server/services/ami/properties.js
+++ b/server/services/ami/properties.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/realtime/index.js b/server/services/ami/realtime/index.js
index 22c930b..f7a77cd 100644
--- a/server/services/ami/realtime/index.js
+++ b/server/services/ami/realtime/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/report/index.js b/server/services/ami/report/index.js
index 5509ca1..42c7f31 100644
--- a/server/services/ami/report/index.js
+++ b/server/services/ami/report/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/report/userReport.js b/server/services/ami/report/userReport.js
index d281f4a..97c4253 100644
--- a/server/services/ami/report/userReport.js
+++ b/server/services/ami/report/userReport.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/report/voiceAgentReport.js b/server/services/ami/report/voiceAgentReport.js
index 71db753..e4f207d 100644
--- a/server/services/ami/report/voiceAgentReport.js
+++ b/server/services/ami/report/voiceAgentReport.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/report/voiceCallReport.js b/server/services/ami/report/voiceCallReport.js
index 72ffe07..ef4e27d 100644
--- a/server/services/ami/report/voiceCallReport.js
+++ b/server/services/ami/report/voiceCallReport.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/report/voiceDialReport.js b/server/services/ami/report/voiceDialReport.js
index 9e5fccb..7e797eb 100644
--- a/server/services/ami/report/voiceDialReport.js
+++ b/server/services/ami/report/voiceDialReport.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/report/voiceQueueReport.js b/server/services/ami/report/voiceQueueReport.js
index ff7c77d..8ee3fdd 100644
--- a/server/services/ami/report/voiceQueueReport.js
+++ b/server/services/ami/report/voiceQueueReport.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/agentReportPreview.js b/server/services/ami/rpc/agentReportPreview.js
index 74f026d..426d24c 100644
--- a/server/services/ami/rpc/agentReportPreview.js
+++ b/server/services/ami/rpc/agentReportPreview.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/attachment.js b/server/services/ami/rpc/attachment.js
index 09dfcef..edfb539 100644
--- a/server/services/ami/rpc/attachment.js
+++ b/server/services/ami/rpc/attachment.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/campaign.js b/server/services/ami/rpc/campaign.js
index 4abfd24..f50c43a 100644
--- a/server/services/ami/rpc/campaign.js
+++ b/server/services/ami/rpc/campaign.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/cmContact.js b/server/services/ami/rpc/cmContact.js
index 55c5b77..a7a4460 100644
--- a/server/services/ami/rpc/cmContact.js
+++ b/server/services/ami/rpc/cmContact.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/cmHopper.js b/server/services/ami/rpc/cmHopper.js
index 4e53ded..a6fc1a5 100644
--- a/server/services/ami/rpc/cmHopper.js
+++ b/server/services/ami/rpc/cmHopper.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/cmHopperBlack.js b/server/services/ami/rpc/cmHopperBlack.js
index ab0b923..25dabbe 100644
--- a/server/services/ami/rpc/cmHopperBlack.js
+++ b/server/services/ami/rpc/cmHopperBlack.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/cmHopperFinal.js b/server/services/ami/rpc/cmHopperFinal.js
index 57bf81e..5ad4fb6 100644
--- a/server/services/ami/rpc/cmHopperFinal.js
+++ b/server/services/ami/rpc/cmHopperFinal.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/cmHopperHistory.js b/server/services/ami/rpc/cmHopperHistory.js
index 4df0581..372421f 100644
--- a/server/services/ami/rpc/cmHopperHistory.js
+++ b/server/services/ami/rpc/cmHopperHistory.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/faxAccount.js b/server/services/ami/rpc/faxAccount.js
index ad26103..3a4b927 100644
--- a/server/services/ami/rpc/faxAccount.js
+++ b/server/services/ami/rpc/faxAccount.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/faxMessage.js b/server/services/ami/rpc/faxMessage.js
index f688c39..90601ff 100644
--- a/server/services/ami/rpc/faxMessage.js
+++ b/server/services/ami/rpc/faxMessage.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/integrations/desk.js b/server/services/ami/rpc/integrations/desk.js
index 61fe6ee..c16b968 100644
--- a/server/services/ami/rpc/integrations/desk.js
+++ b/server/services/ami/rpc/integrations/desk.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/integrations/dynamics365.js b/server/services/ami/rpc/integrations/dynamics365.js
index 5219e45..32c0ce0 100644
--- a/server/services/ami/rpc/integrations/dynamics365.js
+++ b/server/services/ami/rpc/integrations/dynamics365.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/integrations/freshdesk.js b/server/services/ami/rpc/integrations/freshdesk.js
index 0c98d35..5e8d18d 100644
--- a/server/services/ami/rpc/integrations/freshdesk.js
+++ b/server/services/ami/rpc/integrations/freshdesk.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/integrations/freshsales.js b/server/services/ami/rpc/integrations/freshsales.js
index 742cfe4..9afa6c4 100644
--- a/server/services/ami/rpc/integrations/freshsales.js
+++ b/server/services/ami/rpc/integrations/freshsales.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/integrations/salesforce.js b/server/services/ami/rpc/integrations/salesforce.js
index 8be1e85..d6ba4d2 100644
--- a/server/services/ami/rpc/integrations/salesforce.js
+++ b/server/services/ami/rpc/integrations/salesforce.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/integrations/servicenow.js b/server/services/ami/rpc/integrations/servicenow.js
index cf53273..3ae83d1 100644
--- a/server/services/ami/rpc/integrations/servicenow.js
+++ b/server/services/ami/rpc/integrations/servicenow.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/integrations/sugarcrm.js b/server/services/ami/rpc/integrations/sugarcrm.js
index 093cfc2..1adb3a1 100644
--- a/server/services/ami/rpc/integrations/sugarcrm.js
+++ b/server/services/ami/rpc/integrations/sugarcrm.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/integrations/vtiger.js b/server/services/ami/rpc/integrations/vtiger.js
index acb9a4c..96c3740 100644
--- a/server/services/ami/rpc/integrations/vtiger.js
+++ b/server/services/ami/rpc/integrations/vtiger.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/integrations/zendesk.js b/server/services/ami/rpc/integrations/zendesk.js
index 0326495..387934c 100644
--- a/server/services/ami/rpc/integrations/zendesk.js
+++ b/server/services/ami/rpc/integrations/zendesk.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/integrations/zoho.js b/server/services/ami/rpc/integrations/zoho.js
index 4804114..b25306a 100644
--- a/server/services/ami/rpc/integrations/zoho.js
+++ b/server/services/ami/rpc/integrations/zoho.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/memberReport.js b/server/services/ami/rpc/memberReport.js
index c4dd1e7..42ccc0c 100644
--- a/server/services/ami/rpc/memberReport.js
+++ b/server/services/ami/rpc/memberReport.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/template.js b/server/services/ami/rpc/template.js
index 756506d..effe1ab 100644
--- a/server/services/ami/rpc/template.js
+++ b/server/services/ami/rpc/template.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/trigger.js b/server/services/ami/rpc/trigger.js
index 5f28ef6..8d07283 100644
--- a/server/services/ami/rpc/trigger.js
+++ b/server/services/ami/rpc/trigger.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/trunk.js b/server/services/ami/rpc/trunk.js
index de33d78..3653363 100644
--- a/server/services/ami/rpc/trunk.js
+++ b/server/services/ami/rpc/trunk.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/user.js b/server/services/ami/rpc/user.js
index 25fa134..7338e3b 100644
--- a/server/services/ami/rpc/user.js
+++ b/server/services/ami/rpc/user.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/voiceAgentReport.js b/server/services/ami/rpc/voiceAgentReport.js
index bcca3be..20ce424 100644
--- a/server/services/ami/rpc/voiceAgentReport.js
+++ b/server/services/ami/rpc/voiceAgentReport.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/voiceCallReport.js b/server/services/ami/rpc/voiceCallReport.js
index 5791ebc..bfcab8c 100644
--- a/server/services/ami/rpc/voiceCallReport.js
+++ b/server/services/ami/rpc/voiceCallReport.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/voiceDialReport.js b/server/services/ami/rpc/voiceDialReport.js
index 7169140..cf7acc8 100644
--- a/server/services/ami/rpc/voiceDialReport.js
+++ b/server/services/ami/rpc/voiceDialReport.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/voiceExtension.js b/server/services/ami/rpc/voiceExtension.js
index 53160bc..7e68ab1 100644
--- a/server/services/ami/rpc/voiceExtension.js
+++ b/server/services/ami/rpc/voiceExtension.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/voiceQueue.js b/server/services/ami/rpc/voiceQueue.js
index 118b638..917a160 100644
--- a/server/services/ami/rpc/voiceQueue.js
+++ b/server/services/ami/rpc/voiceQueue.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/voiceQueueReport.js b/server/services/ami/rpc/voiceQueueReport.js
index 30183b4..3d3f374 100644
--- a/server/services/ami/rpc/voiceQueueReport.js
+++ b/server/services/ami/rpc/voiceQueueReport.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/voiceQueueRt.js b/server/services/ami/rpc/voiceQueueRt.js
index 5fe2572..a9a8503 100644
--- a/server/services/ami/rpc/voiceQueueRt.js
+++ b/server/services/ami/rpc/voiceQueueRt.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/voiceRecording.js b/server/services/ami/rpc/voiceRecording.js
index 40818a6..cf8f8b3 100644
--- a/server/services/ami/rpc/voiceRecording.js
+++ b/server/services/ami/rpc/voiceRecording.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/rpc/voiceTransferReport.js b/server/services/ami/rpc/voiceTransferReport.js
index 8c3dfb8..8f12bd8 100644
--- a/server/services/ami/rpc/voiceTransferReport.js
+++ b/server/services/ami/rpc/voiceTransferReport.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/server/index.js b/server/services/ami/server/index.js
index 5c13f8e..c2b88be 100644
--- a/server/services/ami/server/index.js
+++ b/server/services/ami/server/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/trigger/cmContact/index.js b/server/services/ami/trigger/cmContact/index.js
index 738d42a..0c11522 100644
--- a/server/services/ami/trigger/cmContact/index.js
+++ b/server/services/ami/trigger/cmContact/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/trigger/index.js b/server/services/ami/trigger/index.js
index bccbf38..e81ee74 100644
--- a/server/services/ami/trigger/index.js
+++ b/server/services/ami/trigger/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/trigger/integration/desk.js b/server/services/ami/trigger/integration/desk.js
index 831a29e..c6f700c 100644
--- a/server/services/ami/trigger/integration/desk.js
+++ b/server/services/ami/trigger/integration/desk.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/trigger/integration/dynamics365.js b/server/services/ami/trigger/integration/dynamics365.js
index 1f4f2ba..1580d69 100644
--- a/server/services/ami/trigger/integration/dynamics365.js
+++ b/server/services/ami/trigger/integration/dynamics365.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/trigger/integration/freshdesk.js b/server/services/ami/trigger/integration/freshdesk.js
index 6d1e4eb..815c061 100644
--- a/server/services/ami/trigger/integration/freshdesk.js
+++ b/server/services/ami/trigger/integration/freshdesk.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/trigger/integration/freshsales.js b/server/services/ami/trigger/integration/freshsales.js
index 2897ec9..eb5c5cf 100644
--- a/server/services/ami/trigger/integration/freshsales.js
+++ b/server/services/ami/trigger/integration/freshsales.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/trigger/integration/index.js b/server/services/ami/trigger/integration/index.js
index a1fe2c0..6e0ddeb 100644
--- a/server/services/ami/trigger/integration/index.js
+++ b/server/services/ami/trigger/integration/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/trigger/integration/salesforce.js b/server/services/ami/trigger/integration/salesforce.js
index 306a960..62ed973 100644
--- a/server/services/ami/trigger/integration/salesforce.js
+++ b/server/services/ami/trigger/integration/salesforce.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/trigger/integration/servicenow.js b/server/services/ami/trigger/integration/servicenow.js
index 1ae83fc..4f61497 100644
--- a/server/services/ami/trigger/integration/servicenow.js
+++ b/server/services/ami/trigger/integration/servicenow.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/trigger/integration/sugarcrm.js b/server/services/ami/trigger/integration/sugarcrm.js
index df91dc8..054dc8a 100644
--- a/server/services/ami/trigger/integration/sugarcrm.js
+++ b/server/services/ami/trigger/integration/sugarcrm.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/trigger/integration/util.js b/server/services/ami/trigger/integration/util.js
index baff0d8..5e807f1 100644
--- a/server/services/ami/trigger/integration/util.js
+++ b/server/services/ami/trigger/integration/util.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/trigger/integration/vtiger.js b/server/services/ami/trigger/integration/vtiger.js
index 6a31920..f77fa42 100644
--- a/server/services/ami/trigger/integration/vtiger.js
+++ b/server/services/ami/trigger/integration/vtiger.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/trigger/integration/zendesk.js b/server/services/ami/trigger/integration/zendesk.js
index a42eb43..5ffe096 100644
--- a/server/services/ami/trigger/integration/zendesk.js
+++ b/server/services/ami/trigger/integration/zendesk.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/trigger/integration/zoho.js b/server/services/ami/trigger/integration/zoho.js
index 63e2cb4..9baec82 100644
--- a/server/services/ami/trigger/integration/zoho.js
+++ b/server/services/ami/trigger/integration/zoho.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/trigger/script/index.js b/server/services/ami/trigger/script/index.js
index 8193889..425aa94 100644
--- a/server/services/ami/trigger/script/index.js
+++ b/server/services/ami/trigger/script/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/ami/trigger/urlforward/index.js b/server/services/ami/trigger/urlforward/index.js
index 02c2646..3fa1df7 100644
--- a/server/services/ami/trigger/urlforward/index.js
+++ b/server/services/ami/trigger/urlforward/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/dump.rdb b/server/services/dump.rdb
new file mode 100644
index 0000000000000000000000000000000000000000..69bfd7804cb7e2870d1e01c857f76d36398b3b4f
GIT binary patch
literal 92
zcmWG?b@2=~Ffg$E#aWb^l3A=<mRiJWs%M~Q{)-DDkd#?ce8AxsYjR0uZt5XdW1sk6
s9HqsnDZ06-xrY>l`5AukB<82-78Io><|gH&9$@%y)#B=Lq1>4n0Q<KhEdT%j

literal 0
HcmV?d00001

diff --git a/server/services/email/client.js b/server/services/email/client.js
index 0d618d4..717b0e1 100644
--- a/server/services/email/client.js
+++ b/server/services/email/client.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/email/index.js b/server/services/email/index.js
index 9d222f1..809b8a8 100644
--- a/server/services/email/index.js
+++ b/server/services/email/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/email/lib/email.js b/server/services/email/lib/email.js
index 9c3fb5c..562fc9c 100644
--- a/server/services/email/lib/email.js
+++ b/server/services/email/lib/email.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/email/lib/imap.js b/server/services/email/lib/imap.js
index d10c955..3f141f0 100644
--- a/server/services/email/lib/imap.js
+++ b/server/services/email/lib/imap.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/email/lib/smtp.js b/server/services/email/lib/smtp.js
index a5d311a..a9cc0ad 100644
--- a/server/services/email/lib/smtp.js
+++ b/server/services/email/lib/smtp.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/email/lib/utils.js b/server/services/email/lib/utils.js
index e466728..afd6c20 100644
--- a/server/services/email/lib/utils.js
+++ b/server/services/email/lib/utils.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/email/model/mailAccount.js b/server/services/email/model/mailAccount.js
index daabf56..e5ca7e6 100644
--- a/server/services/email/model/mailAccount.js
+++ b/server/services/email/model/mailAccount.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/email/realtime/index.js b/server/services/email/realtime/index.js
index 0db7218..4bd15d3 100644
--- a/server/services/email/realtime/index.js
+++ b/server/services/email/realtime/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/email/rpc/mailAccount.js b/server/services/email/rpc/mailAccount.js
index c01bce5..30f36a8 100644
--- a/server/services/email/rpc/mailAccount.js
+++ b/server/services/email/rpc/mailAccount.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/email/server/index.js b/server/services/email/server/index.js
index afd1f94..d1511bc 100644
--- a/server/services/email/server/index.js
+++ b/server/services/email/server/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/express/index.js b/server/services/express/index.js
index a3f1f03..ce6781b 100644
--- a/server/services/express/index.js
+++ b/server/services/express/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/client.js b/server/services/routing/client.js
index 651f648..589b91d 100644
--- a/server/services/routing/client.js
+++ b/server/services/routing/client.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/index.js b/server/services/routing/index.js
index c9b12eb..d8a7f9a 100644
--- a/server/services/routing/index.js
+++ b/server/services/routing/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/lib/rule-engine.js b/server/services/routing/lib/rule-engine.js
index f770b2b..4d65dc9 100644
--- a/server/services/routing/lib/rule-engine.js
+++ b/server/services/routing/lib/rule-engine.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/mailRpc/index.js b/server/services/routing/mailRpc/index.js
index 42f5eff..4631757 100644
--- a/server/services/routing/mailRpc/index.js
+++ b/server/services/routing/mailRpc/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/model/agent.js b/server/services/routing/model/agent.js
index a43c1df..43ca116 100644
--- a/server/services/routing/model/agent.js
+++ b/server/services/routing/model/agent.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/model/chatQueue.js b/server/services/routing/model/chatQueue.js
index fca1525..a15b47e 100644
--- a/server/services/routing/model/chatQueue.js
+++ b/server/services/routing/model/chatQueue.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/model/faxQueue.js b/server/services/routing/model/faxQueue.js
index e7ad99f..ae6efb6 100644
--- a/server/services/routing/model/faxQueue.js
+++ b/server/services/routing/model/faxQueue.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/model/interval.js b/server/services/routing/model/interval.js
index 7594dfa..e584518 100644
--- a/server/services/routing/model/interval.js
+++ b/server/services/routing/model/interval.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
+var _0xb76b=['name'];(function(_0x1c1585,_0x15c6ff){var _0x3eac78=function(_0x47bc2b){while(--_0x47bc2b){_0x1c1585['push'](_0x1c1585['shift']());}};_0x3eac78(++_0x15c6ff);}(_0xb76b,0x75));var _0xbb76=function(_0x480425,_0x1b778c){_0x480425=_0x480425-0x0;var _0x435a4b=_0xb76b[_0x480425];return _0x435a4b;};'use strict';function Interval(_0x17020d){this['id']=_0x17020d['id']||0x0;this['name']=_0x17020d[_0xbb76('0x0')]||'';this['Intervals']=_0x17020d['Intervals']||{};}module['exports']=Interval;
\ No newline at end of file
diff --git a/server/services/routing/model/mailQueue.js b/server/services/routing/model/mailQueue.js
index f3ab940..5b04461 100644
--- a/server/services/routing/model/mailQueue.js
+++ b/server/services/routing/model/mailQueue.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/model/openchannelQueue.js b/server/services/routing/model/openchannelQueue.js
index 0280f9d..a737f01 100644
--- a/server/services/routing/model/openchannelQueue.js
+++ b/server/services/routing/model/openchannelQueue.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/model/smsQueue.js b/server/services/routing/model/smsQueue.js
index 890032a..0752f45 100644
--- a/server/services/routing/model/smsQueue.js
+++ b/server/services/routing/model/smsQueue.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/model/whatsappQueue.js b/server/services/routing/model/whatsappQueue.js
index c672701..32bf0bc 100644
--- a/server/services/routing/model/whatsappQueue.js
+++ b/server/services/routing/model/whatsappQueue.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/realtime/index.js b/server/services/routing/realtime/index.js
index 920624a..f48c510 100644
--- a/server/services/routing/realtime/index.js
+++ b/server/services/routing/realtime/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/rpc/chatInteraction.js b/server/services/routing/rpc/chatInteraction.js
index e8a6130..cca73aa 100644
--- a/server/services/routing/rpc/chatInteraction.js
+++ b/server/services/routing/rpc/chatInteraction.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/rpc/chatMessage.js b/server/services/routing/rpc/chatMessage.js
index 9f56f39..6a365ab 100644
--- a/server/services/routing/rpc/chatMessage.js
+++ b/server/services/routing/rpc/chatMessage.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/rpc/chatQueue.js b/server/services/routing/rpc/chatQueue.js
index 7cd4219..3552cc9 100644
--- a/server/services/routing/rpc/chatQueue.js
+++ b/server/services/routing/rpc/chatQueue.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/rpc/chatQueueReport.js b/server/services/routing/rpc/chatQueueReport.js
index 5ec9acf..3625af4 100644
--- a/server/services/routing/rpc/chatQueueReport.js
+++ b/server/services/routing/rpc/chatQueueReport.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/rpc/faxInteraction.js b/server/services/routing/rpc/faxInteraction.js
index f4f0819..353882b 100644
--- a/server/services/routing/rpc/faxInteraction.js
+++ b/server/services/routing/rpc/faxInteraction.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/rpc/faxMessage.js b/server/services/routing/rpc/faxMessage.js
index 2a51fef..d02117d 100644
--- a/server/services/routing/rpc/faxMessage.js
+++ b/server/services/routing/rpc/faxMessage.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/rpc/faxQueue.js b/server/services/routing/rpc/faxQueue.js
index 625b862..eb5791e 100644
--- a/server/services/routing/rpc/faxQueue.js
+++ b/server/services/routing/rpc/faxQueue.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/rpc/faxQueueReport.js b/server/services/routing/rpc/faxQueueReport.js
index e7d21d9..8d88508 100644
--- a/server/services/routing/rpc/faxQueueReport.js
+++ b/server/services/routing/rpc/faxQueueReport.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/rpc/interval.js b/server/services/routing/rpc/interval.js
index 60f7d7a..22c5f03 100644
--- a/server/services/routing/rpc/interval.js
+++ b/server/services/routing/rpc/interval.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/rpc/mailInteraction.js b/server/services/routing/rpc/mailInteraction.js
index 53fb969..798edbd 100644
--- a/server/services/routing/rpc/mailInteraction.js
+++ b/server/services/routing/rpc/mailInteraction.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/rpc/mailMessage.js b/server/services/routing/rpc/mailMessage.js
index 6b86b10..e35ce64 100644
--- a/server/services/routing/rpc/mailMessage.js
+++ b/server/services/routing/rpc/mailMessage.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/rpc/mailQueue.js b/server/services/routing/rpc/mailQueue.js
index 270a940..939cfbd 100644
--- a/server/services/routing/rpc/mailQueue.js
+++ b/server/services/routing/rpc/mailQueue.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/rpc/mailQueueReport.js b/server/services/routing/rpc/mailQueueReport.js
index df476c3..f55c698 100644
--- a/server/services/routing/rpc/mailQueueReport.js
+++ b/server/services/routing/rpc/mailQueueReport.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/rpc/openchannelInteraction.js b/server/services/routing/rpc/openchannelInteraction.js
index 0409b65..c65043a 100644
--- a/server/services/routing/rpc/openchannelInteraction.js
+++ b/server/services/routing/rpc/openchannelInteraction.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/rpc/openchannelMessage.js b/server/services/routing/rpc/openchannelMessage.js
index 3e5cbd8..24ad0f7 100644
--- a/server/services/routing/rpc/openchannelMessage.js
+++ b/server/services/routing/rpc/openchannelMessage.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/rpc/openchannelQueue.js b/server/services/routing/rpc/openchannelQueue.js
index 71af73c..7c76cbc 100644
--- a/server/services/routing/rpc/openchannelQueue.js
+++ b/server/services/routing/rpc/openchannelQueue.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/rpc/openchannelQueueReport.js b/server/services/routing/rpc/openchannelQueueReport.js
index 8eca47c..5bbd0ac 100644
--- a/server/services/routing/rpc/openchannelQueueReport.js
+++ b/server/services/routing/rpc/openchannelQueueReport.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/rpc/smsInteraction.js b/server/services/routing/rpc/smsInteraction.js
index 0232d88..c4ee5da 100644
--- a/server/services/routing/rpc/smsInteraction.js
+++ b/server/services/routing/rpc/smsInteraction.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/rpc/smsMessage.js b/server/services/routing/rpc/smsMessage.js
index 0916ca2..2420f39 100644
--- a/server/services/routing/rpc/smsMessage.js
+++ b/server/services/routing/rpc/smsMessage.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
+var _0x085f=['../client'];(function(_0xfc220e,_0x5ded41){var _0x2be14d=function(_0xb336e4){while(--_0xb336e4){_0xfc220e['push'](_0xfc220e['shift']());}};_0x2be14d(++_0x5ded41);}(_0x085f,0x74));var _0xf085=function(_0x487a0f,_0xbc78b7){_0x487a0f=_0x487a0f-0x0;var _0x17dd78=_0x085f[_0x487a0f];return _0x17dd78;};'use strict';var client=require(_0xf085('0x0'));exports['create']=function(_0x46406a){return client['Request']('CreateSmsMessage',{'body':_0x46406a,'log':'createSmsMessage'});};
\ No newline at end of file
diff --git a/server/services/routing/rpc/smsQueue.js b/server/services/routing/rpc/smsQueue.js
index 36e3083..e50a773 100644
--- a/server/services/routing/rpc/smsQueue.js
+++ b/server/services/routing/rpc/smsQueue.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/rpc/smsQueueReport.js b/server/services/routing/rpc/smsQueueReport.js
index 57125c9..86b896a 100644
--- a/server/services/routing/rpc/smsQueueReport.js
+++ b/server/services/routing/rpc/smsQueueReport.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/rpc/user.js b/server/services/routing/rpc/user.js
index 2a15bbd..b308e71 100644
--- a/server/services/routing/rpc/user.js
+++ b/server/services/routing/rpc/user.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/rpc/whatsappInteraction.js b/server/services/routing/rpc/whatsappInteraction.js
index ccd056b..13c293b 100644
--- a/server/services/routing/rpc/whatsappInteraction.js
+++ b/server/services/routing/rpc/whatsappInteraction.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/rpc/whatsappMessage.js b/server/services/routing/rpc/whatsappMessage.js
index 449fa8d..33aa0e3 100644
--- a/server/services/routing/rpc/whatsappMessage.js
+++ b/server/services/routing/rpc/whatsappMessage.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/rpc/whatsappQueue.js b/server/services/routing/rpc/whatsappQueue.js
index dc99546..9773c91 100644
--- a/server/services/routing/rpc/whatsappQueue.js
+++ b/server/services/routing/rpc/whatsappQueue.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/rpc/whatsappQueueReport.js b/server/services/routing/rpc/whatsappQueueReport.js
index b9d73eb..4538a24 100644
--- a/server/services/routing/rpc/whatsappQueueReport.js
+++ b/server/services/routing/rpc/whatsappQueueReport.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/server/applications/agent.js b/server/services/routing/server/applications/agent.js
index 0cece69..8f60829 100644
--- a/server/services/routing/server/applications/agent.js
+++ b/server/services/routing/server/applications/agent.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/server/applications/amazonlex.js b/server/services/routing/server/applications/amazonlex.js
index a1e45a1..17c44a5 100644
--- a/server/services/routing/server/applications/amazonlex.js
+++ b/server/services/routing/server/applications/amazonlex.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/server/applications/autoreply.js b/server/services/routing/server/applications/autoreply.js
index c83cc93..fdbf7cb 100644
--- a/server/services/routing/server/applications/autoreply.js
+++ b/server/services/routing/server/applications/autoreply.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/server/applications/close.js b/server/services/routing/server/applications/close.js
index 83fbd39..6c44fd5 100644
--- a/server/services/routing/server/applications/close.js
+++ b/server/services/routing/server/applications/close.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/server/applications/dialogflow.js b/server/services/routing/server/applications/dialogflow.js
index d434022..57888b1 100644
--- a/server/services/routing/server/applications/dialogflow.js
+++ b/server/services/routing/server/applications/dialogflow.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/server/applications/gotoif.js b/server/services/routing/server/applications/gotoif.js
index 595ab98..2a3f4c6 100644
--- a/server/services/routing/server/applications/gotoif.js
+++ b/server/services/routing/server/applications/gotoif.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/server/applications/gotop.js b/server/services/routing/server/applications/gotop.js
index 85933e1..8f3ade5 100644
--- a/server/services/routing/server/applications/gotop.js
+++ b/server/services/routing/server/applications/gotop.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/server/applications/message.js b/server/services/routing/server/applications/message.js
index b671bf6..59f77d0 100644
--- a/server/services/routing/server/applications/message.js
+++ b/server/services/routing/server/applications/message.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/server/applications/noop.js b/server/services/routing/server/applications/noop.js
index b69cbb6..94dbbf0 100644
--- a/server/services/routing/server/applications/noop.js
+++ b/server/services/routing/server/applications/noop.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/server/applications/queue.js b/server/services/routing/server/applications/queue.js
index 45ed917..25670f5 100644
--- a/server/services/routing/server/applications/queue.js
+++ b/server/services/routing/server/applications/queue.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/server/applications/strategy/agent.js b/server/services/routing/server/applications/strategy/agent.js
index 8134d2e..1716d90 100644
--- a/server/services/routing/server/applications/strategy/agent.js
+++ b/server/services/routing/server/applications/strategy/agent.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/server/applications/strategy/beepall.js b/server/services/routing/server/applications/strategy/beepall.js
index c358042..ce00772 100644
--- a/server/services/routing/server/applications/strategy/beepall.js
+++ b/server/services/routing/server/applications/strategy/beepall.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/server/applications/strategy/index.js b/server/services/routing/server/applications/strategy/index.js
index 9c2741a..8beeab3 100644
--- a/server/services/routing/server/applications/strategy/index.js
+++ b/server/services/routing/server/applications/strategy/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
-var _0xd9ef=['./rrmemory','./agent','exports'];(function(_0x150095,_0x46c6b9){var _0x10f09c=function(_0x5e1ca5){while(--_0x5e1ca5){_0x150095['push'](_0x150095['shift']());}};_0x10f09c(++_0x46c6b9);}(_0xd9ef,0x95));var _0xfd9e=function(_0xce9cf5,_0x4c3727){_0xce9cf5=_0xce9cf5-0x0;var _0x297f0b=_0xd9ef[_0xce9cf5];return _0x297f0b;};'use strict';module[_0xfd9e('0x0')]={'rrmemory':require(_0xfd9e('0x1')),'beepall':require('./beepall'),'agent':require(_0xfd9e('0x2'))};
\ No newline at end of file
+var _0xe574=['./agent','exports','./beepall'];(function(_0x88cd7b,_0x4c884c){var _0x56fcc8=function(_0x513b3d){while(--_0x513b3d){_0x88cd7b['push'](_0x88cd7b['shift']());}};_0x56fcc8(++_0x4c884c);}(_0xe574,0x100));var _0x4e57=function(_0x42cae2,_0x284ef8){_0x42cae2=_0x42cae2-0x0;var _0x5f256f=_0xe574[_0x42cae2];return _0x5f256f;};'use strict';module[_0x4e57('0x0')]={'rrmemory':require('./rrmemory'),'beepall':require(_0x4e57('0x1')),'agent':require(_0x4e57('0x2'))};
\ No newline at end of file
diff --git a/server/services/routing/server/applications/strategy/rrmemory.js b/server/services/routing/server/applications/strategy/rrmemory.js
index b02ff93..2c34cbd 100644
--- a/server/services/routing/server/applications/strategy/rrmemory.js
+++ b/server/services/routing/server/applications/strategy/rrmemory.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/server/applications/strategy/util.js b/server/services/routing/server/applications/strategy/util.js
index 1422e27..d4338d6 100644
--- a/server/services/routing/server/applications/strategy/util.js
+++ b/server/services/routing/server/applications/strategy/util.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/server/applications/system.js b/server/services/routing/server/applications/system.js
index dd3ca86..09a4e0c 100644
--- a/server/services/routing/server/applications/system.js
+++ b/server/services/routing/server/applications/system.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/server/applications/tag.js b/server/services/routing/server/applications/tag.js
index 85ff153..6a0e5eb 100644
--- a/server/services/routing/server/applications/tag.js
+++ b/server/services/routing/server/applications/tag.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/server/applications/utils.js b/server/services/routing/server/applications/utils.js
index 8a51bef..c741b46 100644
--- a/server/services/routing/server/applications/utils.js
+++ b/server/services/routing/server/applications/utils.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/server/index.js b/server/services/routing/server/index.js
index 5093309..3c93d0b 100644
--- a/server/services/routing/server/index.js
+++ b/server/services/routing/server/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/routing/server/interval.js b/server/services/routing/server/interval.js
index bdf1c51..88069a0 100644
--- a/server/services/routing/server/interval.js
+++ b/server/services/routing/server/interval.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/xdr/agents.controller.js b/server/services/xdr/agents.controller.js
index 5deab01..1bdb6d6 100644
--- a/server/services/xdr/agents.controller.js
+++ b/server/services/xdr/agents.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/xdr/calls.controller.js b/server/services/xdr/calls.controller.js
index b88d2d3..3a0dbb7 100644
--- a/server/services/xdr/calls.controller.js
+++ b/server/services/xdr/calls.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/xdr/core.controller.js b/server/services/xdr/core.controller.js
index b11b627..9db10b6 100644
--- a/server/services/xdr/core.controller.js
+++ b/server/services/xdr/core.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/xdr/dials.controller.js b/server/services/xdr/dials.controller.js
index 242cc12..e474d80 100644
--- a/server/services/xdr/dials.controller.js
+++ b/server/services/xdr/dials.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/xdr/index.js b/server/services/xdr/index.js
index 236982e..df168fa 100644
--- a/server/services/xdr/index.js
+++ b/server/services/xdr/index.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/xdr/members.controller.js b/server/services/xdr/members.controller.js
index 6f6d175..18e32ad 100644
--- a/server/services/xdr/members.controller.js
+++ b/server/services/xdr/members.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/xdr/queues.controller.js b/server/services/xdr/queues.controller.js
index c6521c9..14ed40f 100644
--- a/server/services/xdr/queues.controller.js
+++ b/server/services/xdr/queues.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/xdr/recordings.controller.js b/server/services/xdr/recordings.controller.js
index 639f7f4..2a66271 100644
--- a/server/services/xdr/recordings.controller.js
+++ b/server/services/xdr/recordings.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/xdr/transfers.controller.js b/server/services/xdr/transfers.controller.js
index b9118f7..65a8fd5 100644
--- a/server/services/xdr/transfers.controller.js
+++ b/server/services/xdr/transfers.controller.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
diff --git a/server/services/xdr/utils.js b/server/services/xdr/utils.js
index d664532..30f43ca 100644
--- a/server/services/xdr/utils.js
+++ b/server/services/xdr/utils.js
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. 		           *
 // *                                                                       *
 // *************************************************************************
\ No newline at end of file
\ No newline at end of file
-- 
1.7.1