connectwise-rest 0.23.3 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (288) hide show
  1. package/.eslintrc +19 -52
  2. package/.gitattributes +1 -0
  3. package/.github/workflows/codeql-analysis.yml +70 -0
  4. package/.github/workflows/node.js.yml +42 -0
  5. package/.mocharc.json +5 -0
  6. package/.prettierrc +7 -0
  7. package/.travis.yml +4 -2
  8. package/README.md +243 -230
  9. package/api-extractor.json +364 -0
  10. package/dist/Automate/AVTemplatePoliciesAPI.d.ts +27 -0
  11. package/dist/Automate/AVTemplatePoliciesAPI.d.ts.map +1 -0
  12. package/dist/Automate/AVTemplatePoliciesAPI.js +87 -0
  13. package/dist/Automate/AVTemplatePoliciesAPI.js.map +1 -0
  14. package/dist/Automate/ClientsAPI.d.ts +34 -0
  15. package/dist/Automate/ClientsAPI.d.ts.map +1 -0
  16. package/dist/Automate/ClientsAPI.js +114 -0
  17. package/dist/Automate/ClientsAPI.js.map +1 -0
  18. package/dist/Automate/CommandsAPI.d.ts +15 -0
  19. package/dist/Automate/CommandsAPI.d.ts.map +1 -0
  20. package/dist/Automate/CommandsAPI.js +31 -0
  21. package/dist/Automate/CommandsAPI.js.map +1 -0
  22. package/dist/Automate/ComputersAPI.d.ts +94 -0
  23. package/dist/Automate/ComputersAPI.d.ts.map +1 -0
  24. package/dist/Automate/ComputersAPI.js +353 -0
  25. package/dist/Automate/ComputersAPI.js.map +1 -0
  26. package/dist/Automate/ContactsAPI.d.ts +18 -0
  27. package/dist/Automate/ContactsAPI.d.ts.map +1 -0
  28. package/dist/Automate/ContactsAPI.js +45 -0
  29. package/dist/Automate/ContactsAPI.js.map +1 -0
  30. package/dist/Automate/DataViewsAPI.d.ts +16 -0
  31. package/dist/Automate/DataViewsAPI.d.ts.map +1 -0
  32. package/dist/Automate/DataViewsAPI.js +31 -0
  33. package/dist/Automate/DataViewsAPI.js.map +1 -0
  34. package/dist/Automate/DrivesAPI.d.ts +19 -0
  35. package/dist/Automate/DrivesAPI.d.ts.map +1 -0
  36. package/dist/Automate/DrivesAPI.js +52 -0
  37. package/dist/Automate/DrivesAPI.js.map +1 -0
  38. package/dist/Automate/EventLogsAPI.d.ts +14 -0
  39. package/dist/Automate/EventLogsAPI.d.ts.map +1 -0
  40. package/dist/Automate/EventLogsAPI.js +24 -0
  41. package/dist/Automate/EventLogsAPI.js.map +1 -0
  42. package/dist/Automate/LocationsAPI.d.ts +42 -0
  43. package/dist/Automate/LocationsAPI.d.ts.map +1 -0
  44. package/dist/Automate/LocationsAPI.js +133 -0
  45. package/dist/Automate/LocationsAPI.js.map +1 -0
  46. package/dist/Automate/MaintenanceWindowDefinitionsAPI.d.ts +14 -0
  47. package/dist/Automate/MaintenanceWindowDefinitionsAPI.d.ts.map +1 -0
  48. package/dist/Automate/MaintenanceWindowDefinitionsAPI.js +24 -0
  49. package/dist/Automate/MaintenanceWindowDefinitionsAPI.js.map +1 -0
  50. package/dist/Automate/MonitorsAPI.d.ts +23 -0
  51. package/dist/Automate/MonitorsAPI.d.ts.map +1 -0
  52. package/dist/Automate/MonitorsAPI.js +80 -0
  53. package/dist/Automate/MonitorsAPI.js.map +1 -0
  54. package/dist/Automate/NetworkDevicesAPI.d.ts +17 -0
  55. package/dist/Automate/NetworkDevicesAPI.d.ts.map +1 -0
  56. package/dist/Automate/NetworkDevicesAPI.js +38 -0
  57. package/dist/Automate/NetworkDevicesAPI.js.map +1 -0
  58. package/dist/Automate/PatchingAPI.d.ts +27 -0
  59. package/dist/Automate/PatchingAPI.d.ts.map +1 -0
  60. package/dist/Automate/PatchingAPI.js +94 -0
  61. package/dist/Automate/PatchingAPI.js.map +1 -0
  62. package/dist/Automate/RemoteAgentAPI.d.ts +18 -0
  63. package/dist/Automate/RemoteAgentAPI.d.ts.map +1 -0
  64. package/dist/Automate/RemoteAgentAPI.js +45 -0
  65. package/dist/Automate/RemoteAgentAPI.js.map +1 -0
  66. package/dist/Automate/ScriptingAPI.d.ts +32 -0
  67. package/dist/Automate/ScriptingAPI.d.ts.map +1 -0
  68. package/dist/Automate/ScriptingAPI.js +104 -0
  69. package/dist/Automate/ScriptingAPI.js.map +1 -0
  70. package/dist/Automate/SearchesAPI.d.ts +17 -0
  71. package/dist/Automate/SearchesAPI.d.ts.map +1 -0
  72. package/dist/Automate/SearchesAPI.js +38 -0
  73. package/dist/Automate/SearchesAPI.js.map +1 -0
  74. package/dist/Automate/SystemAPI.d.ts +72 -0
  75. package/dist/Automate/SystemAPI.d.ts.map +1 -0
  76. package/dist/Automate/SystemAPI.js +268 -0
  77. package/dist/Automate/SystemAPI.js.map +1 -0
  78. package/dist/Automate/TicketsAPI.d.ts +10 -0
  79. package/dist/Automate/TicketsAPI.d.ts.map +1 -0
  80. package/dist/Automate/TicketsAPI.js +24 -0
  81. package/dist/Automate/TicketsAPI.js.map +1 -0
  82. package/dist/Automate/UserProfilesAPI.d.ts +14 -0
  83. package/dist/Automate/UserProfilesAPI.d.ts.map +1 -0
  84. package/dist/Automate/UserProfilesAPI.js +23 -0
  85. package/dist/Automate/UserProfilesAPI.js.map +1 -0
  86. package/dist/Automate.d.ts +48 -0
  87. package/dist/Automate.d.ts.map +1 -0
  88. package/dist/Automate.js +167 -0
  89. package/dist/Automate.js.map +1 -0
  90. package/dist/AutomateAPI.d.ts +96 -0
  91. package/dist/AutomateAPI.d.ts.map +1 -0
  92. package/dist/AutomateAPI.js +168 -0
  93. package/dist/AutomateAPI.js.map +1 -0
  94. package/dist/AutomateTypes.d.ts +10437 -0
  95. package/dist/AutomateTypes.d.ts.map +1 -0
  96. package/dist/AutomateTypes.js +3 -0
  97. package/dist/AutomateTypes.js.map +1 -0
  98. package/dist/BaseAPI.d.ts +13 -0
  99. package/dist/BaseAPI.d.ts.map +1 -0
  100. package/dist/BaseAPI.js +53 -0
  101. package/dist/BaseAPI.js.map +1 -0
  102. package/dist/Manage/CompanyAPI.d.ts +573 -0
  103. package/dist/Manage/CompanyAPI.d.ts.map +1 -0
  104. package/dist/Manage/CompanyAPI.js +3294 -0
  105. package/dist/Manage/CompanyAPI.js.map +1 -0
  106. package/dist/Manage/ConfigurationsAPI.d.ts +24 -0
  107. package/dist/Manage/ConfigurationsAPI.d.ts.map +1 -0
  108. package/dist/Manage/ConfigurationsAPI.js +73 -0
  109. package/dist/Manage/ConfigurationsAPI.js.map +1 -0
  110. package/dist/Manage/ExpenseAPI.d.ts +68 -0
  111. package/dist/Manage/ExpenseAPI.d.ts.map +1 -0
  112. package/dist/Manage/ExpenseAPI.js +306 -0
  113. package/dist/Manage/ExpenseAPI.js.map +1 -0
  114. package/dist/Manage/FinanceAPI.d.ts +460 -0
  115. package/dist/Manage/FinanceAPI.d.ts.map +1 -0
  116. package/dist/Manage/FinanceAPI.js +2587 -0
  117. package/dist/Manage/FinanceAPI.js.map +1 -0
  118. package/dist/Manage/MarketingAPI.d.ts +120 -0
  119. package/dist/Manage/MarketingAPI.d.ts.map +1 -0
  120. package/dist/Manage/MarketingAPI.js +629 -0
  121. package/dist/Manage/MarketingAPI.js.map +1 -0
  122. package/dist/Manage/ProcurementAPI.d.ts +373 -0
  123. package/dist/Manage/ProcurementAPI.d.ts.map +1 -0
  124. package/dist/Manage/ProcurementAPI.js +2098 -0
  125. package/dist/Manage/ProcurementAPI.js.map +1 -0
  126. package/dist/Manage/ProjectAPI.d.ts +179 -0
  127. package/dist/Manage/ProjectAPI.d.ts.map +1 -0
  128. package/dist/Manage/ProjectAPI.js +940 -0
  129. package/dist/Manage/ProjectAPI.js.map +1 -0
  130. package/dist/Manage/SalesAPI.d.ts +254 -0
  131. package/dist/Manage/SalesAPI.d.ts.map +1 -0
  132. package/dist/Manage/SalesAPI.js +1392 -0
  133. package/dist/Manage/SalesAPI.js.map +1 -0
  134. package/dist/Manage/ScheduleAPI.d.ts +111 -0
  135. package/dist/Manage/ScheduleAPI.d.ts.map +1 -0
  136. package/dist/Manage/ScheduleAPI.js +575 -0
  137. package/dist/Manage/ScheduleAPI.js.map +1 -0
  138. package/dist/Manage/ServiceAPI.d.ts +419 -0
  139. package/dist/Manage/ServiceAPI.d.ts.map +1 -0
  140. package/dist/Manage/ServiceAPI.js +2334 -0
  141. package/dist/Manage/ServiceAPI.js.map +1 -0
  142. package/dist/Manage/SystemAPI.d.ts +809 -0
  143. package/dist/Manage/SystemAPI.d.ts.map +1 -0
  144. package/dist/Manage/SystemAPI.js +4531 -0
  145. package/dist/Manage/SystemAPI.js.map +1 -0
  146. package/dist/Manage/TimeAPI.d.ts +157 -0
  147. package/dist/Manage/TimeAPI.d.ts.map +1 -0
  148. package/dist/Manage/TimeAPI.js +835 -0
  149. package/dist/Manage/TimeAPI.js.map +1 -0
  150. package/dist/Manage.d.ts +34 -0
  151. package/dist/Manage.d.ts.map +1 -0
  152. package/dist/Manage.js +127 -0
  153. package/dist/Manage.js.map +1 -0
  154. package/dist/ManageAPI.d.ts +99 -0
  155. package/dist/ManageAPI.d.ts.map +1 -0
  156. package/dist/ManageAPI.js +112 -0
  157. package/dist/ManageAPI.js.map +1 -0
  158. package/dist/ManageTypes.d.ts +91320 -0
  159. package/dist/ManageTypes.d.ts.map +1 -0
  160. package/dist/ManageTypes.js +7 -0
  161. package/dist/ManageTypes.js.map +1 -0
  162. package/dist/index.d.ts +9 -0
  163. package/dist/index.d.ts.map +1 -0
  164. package/dist/index.js +38 -0
  165. package/dist/index.js.map +1 -0
  166. package/dist/types.d.ts +46 -0
  167. package/dist/types.d.ts.map +1 -0
  168. package/dist/types.js +21 -0
  169. package/dist/types.js.map +1 -0
  170. package/dist/utils/Callback.d.ts +67 -0
  171. package/dist/utils/Callback.d.ts.map +1 -0
  172. package/dist/utils/Callback.js +109 -0
  173. package/dist/utils/Callback.js.map +1 -0
  174. package/dist/utils/Series.d.ts +36 -0
  175. package/dist/utils/Series.d.ts.map +1 -0
  176. package/dist/utils/Series.js +64 -0
  177. package/dist/utils/Series.js.map +1 -0
  178. package/dist/utils/index.d.ts +7 -0
  179. package/dist/utils/index.d.ts.map +1 -0
  180. package/dist/utils/index.js +11 -0
  181. package/dist/utils/index.js.map +1 -0
  182. package/generator/automate-generator.js +75 -0
  183. package/generator/automate-json.js +61 -0
  184. package/generator/automate-types.js +15 -0
  185. package/generator/generator.d.ts +67 -0
  186. package/generator/generator.js +255 -0
  187. package/generator/manage-generator.js +71 -0
  188. package/generator/manage-types.js +14 -0
  189. package/package.json +48 -21
  190. package/src/Automate/AVTemplatePoliciesAPI.ts +114 -0
  191. package/src/Automate/ClientsAPI.ts +161 -0
  192. package/src/Automate/CommandsAPI.ts +33 -0
  193. package/src/Automate/ComputersAPI.ts +550 -0
  194. package/src/Automate/ContactsAPI.ts +56 -0
  195. package/src/Automate/DataViewsAPI.ts +36 -0
  196. package/src/Automate/DrivesAPI.ts +74 -0
  197. package/src/Automate/EventLogsAPI.ts +25 -0
  198. package/src/Automate/LocationsAPI.ts +206 -0
  199. package/src/Automate/MaintenanceWindowDefinitionsAPI.ts +28 -0
  200. package/src/Automate/MonitorsAPI.ts +94 -0
  201. package/src/Automate/NetworkDevicesAPI.ts +44 -0
  202. package/src/Automate/PatchingAPI.ts +109 -0
  203. package/src/Automate/RemoteAgentAPI.ts +58 -0
  204. package/src/Automate/ScriptingAPI.ts +137 -0
  205. package/src/Automate/SearchesAPI.ts +42 -0
  206. package/src/Automate/SystemAPI.ts +386 -0
  207. package/src/Automate/TicketsAPI.ts +24 -0
  208. package/src/Automate/UserProfilesAPI.ts +25 -0
  209. package/src/Automate.ts +216 -0
  210. package/src/AutomateAPI.ts +144 -0
  211. package/src/AutomateTypes.ts +10492 -0
  212. package/src/BaseAPI.ts +83 -0
  213. package/src/Manage/CompanyAPI.ts +4851 -0
  214. package/src/Manage/ConfigurationsAPI.ts +107 -0
  215. package/src/Manage/ExpenseAPI.ts +395 -0
  216. package/src/Manage/FinanceAPI.ts +3851 -0
  217. package/src/Manage/MarketingAPI.ts +935 -0
  218. package/src/Manage/ProcurementAPI.ts +3044 -0
  219. package/src/Manage/ProjectAPI.ts +1400 -0
  220. package/src/Manage/SalesAPI.ts +1922 -0
  221. package/src/Manage/ScheduleAPI.ts +751 -0
  222. package/src/Manage/ServiceAPI.ts +3401 -0
  223. package/src/Manage/SystemAPI.ts +6269 -0
  224. package/src/Manage/TimeAPI.ts +1121 -0
  225. package/src/Manage.ts +152 -0
  226. package/src/ManageAPI.ts +133 -0
  227. package/src/ManageTypes.ts +91318 -0
  228. package/src/index.ts +18 -0
  229. package/src/types.ts +66 -0
  230. package/src/utils/Callback.ts +145 -0
  231. package/src/utils/Series.ts +83 -0
  232. package/src/utils/index.ts +7 -0
  233. package/swagger-errors.md +30 -0
  234. package/test/.env.example +12 -4
  235. package/test/test-utils.ts +27 -0
  236. package/test/test.ts +320 -0
  237. package/tsconfig.json +29 -0
  238. package/doc.md +0 -5984
  239. package/docs/jsdoc.json +0 -15
  240. package/index.js +0 -10
  241. package/src/CompanyAPI/Companies.js +0 -149
  242. package/src/CompanyAPI/CompanyCompanyTypeAssociations.js +0 -111
  243. package/src/CompanyAPI/CompanySites.js +0 -70
  244. package/src/CompanyAPI/CompanyTeams.js +0 -108
  245. package/src/CompanyAPI/CompanyTypeInfos.js +0 -58
  246. package/src/CompanyAPI/CompanyTypes.js +0 -52
  247. package/src/CompanyAPI/Configurations.js +0 -152
  248. package/src/CompanyAPI/ContactContactTypeAssociations.js +0 -55
  249. package/src/CompanyAPI/ContactRelationships.js +0 -36
  250. package/src/CompanyAPI/Contacts.js +0 -199
  251. package/src/CompanyAPI/index.js +0 -53
  252. package/src/ConnectWise.js +0 -339
  253. package/src/ConnectWiseRest.js +0 -512
  254. package/src/FinanceAPI/Additions.js +0 -127
  255. package/src/FinanceAPI/Adjustments.js +0 -109
  256. package/src/FinanceAPI/AgreementSites.js +0 -108
  257. package/src/FinanceAPI/Agreements.js +0 -220
  258. package/src/FinanceAPI/BoardDefaults.js +0 -109
  259. package/src/FinanceAPI/WorkRoles.js +0 -113
  260. package/src/FinanceAPI/WorkTypeExclusions.js +0 -78
  261. package/src/FinanceAPI/WorkTypes.js +0 -124
  262. package/src/FinanceAPI/index.js +0 -50
  263. package/src/ProjectAPI/Projects.js +0 -142
  264. package/src/ProjectAPI/index.js +0 -28
  265. package/src/SalesAPI/Activities.js +0 -149
  266. package/src/SalesAPI/index.js +0 -14
  267. package/src/ScheduleAPI/ScheduleEntries.js +0 -109
  268. package/src/ScheduleAPI/ScheduleTypes.js +0 -101
  269. package/src/ScheduleAPI/index.js +0 -30
  270. package/src/ServiceDeskAPI/BoardItems.js +0 -134
  271. package/src/ServiceDeskAPI/BoardSubTypes.js +0 -112
  272. package/src/ServiceDeskAPI/BoardTeams.js +0 -108
  273. package/src/ServiceDeskAPI/BoardTypes.js +0 -139
  274. package/src/ServiceDeskAPI/Boards.js +0 -100
  275. package/src/ServiceDeskAPI/Priorities.js +0 -47
  276. package/src/ServiceDeskAPI/ServiceNotes.js +0 -172
  277. package/src/ServiceDeskAPI/Statuses.js +0 -116
  278. package/src/ServiceDeskAPI/Tickets.js +0 -588
  279. package/src/ServiceDeskAPI/index.js +0 -53
  280. package/src/SystemAPI/Members.js +0 -139
  281. package/src/SystemAPI/Reports.js +0 -116
  282. package/src/SystemAPI/index.js +0 -32
  283. package/src/TimeAPI/TimeEntries.js +0 -121
  284. package/src/TimeAPI/index.js +0 -27
  285. package/src/utils/Callback.js +0 -125
  286. package/src/utils/Series.js +0 -64
  287. package/src/utils/index.js +0 -21
  288. package/test/test.js +0 -114
@@ -1,152 +0,0 @@
1
- /**
2
- * Created by kgrube on 1/22/2016.
3
- */
4
-
5
- /**
6
- * @private
7
- */
8
- const inherits = require('util').inherits;
9
- const ConnectWise = require('../ConnectWise.js');
10
-
11
- /**
12
- * @typedef {object} Configuration
13
- * @property {number} id
14
- * @property {string} name
15
- * @property {TypeHref} type
16
- * @property {StatusHref} status
17
- * @property {CompanyHref} company
18
- * @property {ContactHref} contact
19
- * @property {SiteHref} site
20
- * @property activeFlag
21
- * @property id
22
- * @property name
23
- * @property locationId
24
- * @property businessUnitId
25
- * @property deviceIdentifier
26
- * @property serialNumber
27
- * @property modelNumber
28
- * @property tagNumber
29
- * @property purchaseDate
30
- * @property installationDate
31
- * @property installedBy
32
- * @property warrantyExpirationDate
33
- * @property vendorNotes
34
- * @property notes
35
- * @property macAddress
36
- * @property lastLoginName
37
- * @property billFlag
38
- * @property backupSuccesses
39
- * @property backupIncomplete
40
- * @property backupFailed
41
- * @property backupRestores
42
- * @property lastBackupDate
43
- * @property backupServerName
44
- * @property backupBillableSpaceGb
45
- * @property backupProtectedDeviceList
46
- * @property backupYear
47
- * @property backupMonth
48
- * @property ipAddress
49
- * @property defaultGateway
50
- * @property osType
51
- * @property osInfo
52
- * @property cpuSpeed
53
- * @property ram
54
- * @property localHardDrives
55
- * @property parentConfigurationId
56
- * @property vendor
57
- * @property manufacturer
58
- * @property activeFlag
59
- * @property managementLink
60
- * @property remoteLink
61
- * @property {object} _info
62
- * @property {string} _info.lastUpdated
63
- * @property {string} _info.updatedBy
64
- */
65
-
66
- /**
67
- * @typedef {object} ConfigurationQuestion
68
- * @property {number} answerId
69
- * @property {number} questionId
70
- * @property {string} question
71
- * @property {null|boolean|number|string} answer
72
- * @property {number} sequenceNumber
73
- * @property {number} numberOfDecimals
74
- * @property {string} fieldType ['Text', 'Button', 'Currency', 'Date', 'Hyperlink', 'IPAddress', 'Checkbox', 'Number', 'Percent', 'TextArea', 'Password']
75
- */
76
-
77
- /**
78
- *
79
- * @param {CWOptions} options
80
- * @inherits {ConnectWise}
81
- * @constructor
82
- */
83
- function Configurations(options) {
84
- ConnectWise.apply(this, Array.prototype.slice.call(arguments));
85
- }
86
-
87
- inherits(Configurations, ConnectWise);
88
-
89
- /**
90
- * @param {Params} params
91
- * @returns {Promise<Configuration[]>}
92
- */
93
- Configurations.prototype.getConfigurations = function (params) {
94
- return this.api('/company/configurations', 'GET', params);
95
- };
96
- /**
97
- *
98
- * @param {Configuration} configuration
99
- * @returns {Promise<Configuration>}
100
- */
101
- Configurations.prototype.createConfiguration = function (configuration) {
102
- return this.api('/company/configurations', 'POST', configuration);
103
- };
104
-
105
- /**
106
- * @param {ParamsConfig} params
107
- * @returns {Promise<Count>}
108
- */
109
- Configurations.prototype.getConfigurationsCount = function (params) {
110
- return this.api('/company/configurations/count', 'GET', params);
111
- };
112
-
113
- /**
114
- * @param {string|number} id
115
- * @returns {Promise<DeleteResponse>}
116
- */
117
- Configurations.prototype.deleteConfigurationById = function (id) {
118
- return this.api(`/company/configurations/${id}`, 'DELETE');
119
- };
120
-
121
- /**
122
- * @param {string|number} id
123
- * @returns {Promise<Configuration>}
124
- */
125
- Configurations.prototype.getConfigurationById = function (id) {
126
- return this.api(`/company/configurations/${id}`, 'GET');
127
- };
128
-
129
- /**
130
- * @param {string|number} id
131
- * @param {Operations[]} ops
132
- * @param {ParamsConfigUpdate} [params] unused currently @todo figure this out
133
- * @returns {Promise<Configuration>}
134
- */
135
- Configurations.prototype.updateConfiguration = function (id, ops, params) {
136
- return this.api(`/company/configurations/${id}`, 'PATCH', ops);
137
- };
138
-
139
- /**
140
- * @param {string|number} id
141
- * @param {Configuration} config
142
- * @returns {Promise<Configuration>}
143
- */
144
- Configurations.prototype.replaceConfiguration = function (id, config) {
145
- return this.api(`/company/configurations/${id}`, 'PUT', config);
146
- };
147
-
148
- /**
149
- *
150
- * @type {Configurations}
151
- */
152
- module.exports = Configurations;
@@ -1,55 +0,0 @@
1
- const inherits = require('util').inherits;
2
- const ConnectWise = require('../ConnectWise.js');
3
-
4
- /**
5
- * Company > ContactContactTypeAssociations
6
- * @pilot
7
- */
8
-
9
- /**
10
- * @typedef {object} ContactTypeAssociation
11
- * @property id
12
- * @property type {ContactType}
13
- * @property contact {ContactHref}
14
- * @property _info
15
- */
16
-
17
- /**
18
- *
19
- * @param {CWOptions} options
20
- * @inherits {ConnectWise}
21
- * @constructor
22
- */
23
- function ContactContactTypeAssociations(options) {
24
- ConnectWise.apply(this, Array.prototype.slice.call(arguments));
25
- }
26
-
27
- inherits(ContactContactTypeAssociations, ConnectWise);
28
-
29
- /**
30
- * @param contactId
31
- * @param {Params} params
32
- * @returns {Promise<ContactTypeAssociation[]>}
33
- */
34
- ContactContactTypeAssociations.prototype.get = function (contactId, params) {
35
- const path = `/company/contacts/${contactId}/typeAssociations`;
36
-
37
- return this.api(path, 'GET', params);
38
- };
39
-
40
- ContactContactTypeAssociations.prototype.update = function (contactId, associationId, params) {
41
- const path = `/company/contacts/${contactId}/typeAssociations/${associationId}`;
42
-
43
- return this.api(path, 'PUT', params);
44
- };
45
-
46
- ContactContactTypeAssociations.prototype.create = function (contactId, params) {
47
- const path = `/company/contacts/${contactId}/typeAssociations`;
48
-
49
- return this.api(path, 'POST', params);
50
- };
51
-
52
- /**
53
- * @type {ContactContactTypeAssociations}
54
- */
55
- module.exports = ContactContactTypeAssociations;
@@ -1,36 +0,0 @@
1
- const inherits = require('util').inherits;
2
- const ConnectWise = require('../ConnectWise.js');
3
-
4
- /**
5
- * @typedef {object} Relationship
6
- * @property {number} id
7
- * @property {string} name
8
- * @property {object} _info
9
- * @property {string} _info.lastUpdated
10
- * @property {string} _info.updatedBy
11
- */
12
-
13
- /**
14
- *
15
- * @param {CWOptions} options
16
- * @inherits {ConnectWise}
17
- * @constructor
18
- */
19
- function ContactRelationships(options) {
20
- ConnectWise.apply(this, Array.prototype.slice.call(arguments));
21
- }
22
-
23
- inherits(ContactRelationships, ConnectWise);
24
-
25
- /**
26
- * @param {Params} params
27
- * @returns {Promise<Relationship[]>}
28
- */
29
- ContactRelationships.prototype.getRelationships = function (params) {
30
- return this.api('/company/contacts/relationships', 'GET', params);
31
- };
32
-
33
- /**
34
- * @type {ContactRelationships}
35
- */
36
- module.exports = ContactRelationships;
@@ -1,199 +0,0 @@
1
- /**
2
- * Created by kgrube on 1/22/2016.
3
- */
4
-
5
- /**
6
- * @private
7
- */
8
- const inherits = require('util').inherits;
9
- const ConnectWise = require('../ConnectWise.js');
10
-
11
- /**
12
- * @typedef {object} Contact
13
- * @property {string} addressLine1
14
- * @property {string} addressLine2
15
- * @property {string} anniversary
16
- * @property assistantContactId
17
- * @property {boolean} childrenFlag
18
- * @property city
19
- * @property {CommunicationItemHref[]} communicationItems
20
- * @property {CompanyHref} company
21
- * @property {CountryHref} country
22
- * @property {CustomField[]} customFields
23
- * @property {DepartmentHref} department
24
- * @property {boolean} disablePortalLoginFlag
25
- * @property {string} firstName
26
- * @property gender
27
- * @property {number} id numeric identifier
28
- * @property {boolean} inactiveFlag
29
- * @property {string} lastName
30
- * @property managerContactId
31
- * @property {boolean} marriedFlag
32
- * @property {string} nickName
33
- * @property portalPassword
34
- * @property {number} portalSecurityLevel
35
- * @property presence
36
- * @property {RelationshipHref} relationship
37
- * @property school
38
- * @property securityIdentifier
39
- * @property significantOther
40
- * @property {SiteHref} site
41
- * @property state
42
- * @property {string} title
43
- * @property {TypeHref} type
44
- * @property {boolean} unsubscribeFlag
45
- * @property zip
46
- * @property {object} _info
47
- * @property {string} _info.communications_href
48
- * @property {string} _info.image_href
49
- * @property {string} _info.notes_href
50
- * @property {string} _info.lastUpdated
51
- * @property {string} _info.portalSecurity_href
52
- * @property {string} _info.tracks_href
53
- * @property {string} _info.updatedBy
54
- */
55
-
56
- /**
57
- * @typedef {object} ContactType
58
- * @property {number} id
59
- * @property {string} description
60
- * @property {boolean} defaultFlag
61
- * @property {object} _info
62
- * @property {string} _info.lastUpdated
63
- * @property {string} _info.updatedBy
64
- */
65
-
66
- /**
67
- * @typedef {object} PortalSecurity
68
- * @property {string} identifier
69
- * @property {boolean} enabled
70
- */
71
-
72
- /**
73
- * @typedef {object} ValidatePortalResponse
74
- * @property {boolean} success
75
- * @property {number} contactId
76
- */
77
-
78
- /**
79
- *
80
- * @param {CWOptions} options
81
- * @inherits {ConnectWise}
82
- * @constructor
83
- */
84
- function Contacts(options) {
85
- ConnectWise.apply(this, Array.prototype.slice.call(arguments));
86
- }
87
-
88
- inherits(Contacts, ConnectWise);
89
-
90
- /**
91
- * @param {Params} params
92
- * @returns {Promise<Contact[]>}
93
- */
94
- Contacts.prototype.getContacts = function (params) {
95
- return this.api('/company/contacts', 'GET', params);
96
- };
97
-
98
- /**
99
- * @param {Contact} contact
100
- * @returns {Promise<Contact>}
101
- */
102
- Contacts.prototype.createContact = function (contact) {
103
- return this.api('/company/contacts', 'POST', contact);
104
- };
105
-
106
- /**
107
- * @param {ParamsConditions} params
108
- * @returns {Promise<Count>}
109
- */
110
- Contacts.prototype.getContactsCount = function (params) {
111
- return this.api('/company/contacts/count', 'GET', params);
112
- };
113
-
114
- /**
115
- * @param {ParamsConditions} params
116
- * @returns {Promise<ContactType>}
117
- */
118
- Contacts.prototype.getContactTypes = function (params) {
119
- return this.api('/company/contacts/types', 'GET', params);
120
- };
121
-
122
- /**
123
- * @param {number|string} id
124
- * @param {number|string} transferContactId
125
- * @returns {Promise<DeleteResponse>}
126
- */
127
- Contacts.prototype.deleteContactById = function (id, transferContactId) {
128
- return this.api(`/company/contacts/${id}`, 'DELETE', {transferContactId: transferContactId});
129
- };
130
-
131
- /**
132
- * @param {string|number} id
133
- * @returns {Promise<Contact>}
134
- */
135
- Contacts.prototype.getContactById = function (id) {
136
- return this.api(`/company/contacts/${id}`, 'GET');
137
- };
138
-
139
- /**
140
- * @param {string|number} id
141
- * @param {Operations[]} operations
142
- * @returns {Promise<Contact>}
143
- */
144
- Contacts.prototype.updateContact = function (id, operations) {
145
- return this.api(`/company/contacts/${id}`, 'PATCH', operations);
146
- };
147
-
148
- /**
149
- * @param {string|number} id
150
- * @param {Contact} contact
151
- * @returns {Promise<Contact>}
152
- */
153
- Contacts.prototype.replaceContact = function (id, contact) {
154
- return this.api(`/company/contacts/${id}`, 'PUT', contact);
155
- };
156
-
157
- /**
158
- * @param {string|number} id
159
- * @returns {Promise<PortalSecurity[]>}
160
- */
161
- Contacts.prototype.getPortalSecurity = function (id) {
162
- return this.api(`/company/contacts/${id}/portalSecurity`, 'GET');
163
- };
164
-
165
-
166
- /**
167
- * @param {string} email
168
- * @returns {Promise<PostResponse>}
169
- */
170
- Contacts.prototype.requestPassword = function (email) {
171
- return this.api('/company/contacts/requestPassword', 'POST', {email: email});
172
- };
173
-
174
- /**
175
- *
176
- * @param {string} email
177
- * @param {string} password
178
- * @returns {Promise<ValidatePortalResponse>}
179
- */
180
- Contacts.prototype.validatePortalCredentials = function (email, password) {
181
- return this.api('/company/contacts/validatePortalCredentials', 'POST', {email: email, password: password});
182
- };
183
-
184
- /**
185
- *
186
- * @param {string|number} id
187
- * @param {boolean} useDefaultFlag
188
- * @param {string} lastModified
189
- * @returns {Promise<*>} @TODO check return type
190
- */
191
- Contacts.prototype.getContactImage = function (id, useDefaultFlag, lastModified) {
192
- return this.api(`/company/contacts/${id}/image`, 'GET', params);
193
- };
194
-
195
- /**
196
- *
197
- * @type {Contacts}
198
- */
199
- module.exports = Contacts;
@@ -1,53 +0,0 @@
1
- /**
2
- * Created by kgrube on 1/22/2015.
3
- * @author kgrube
4
- */
5
-
6
- /**
7
- * @typedef {object} CompanyAPI
8
- * @property {Companies} Companies
9
- * @property {Contacts} Contacts
10
- * @property {Configurations} Configurations
11
- * @property {ContactRelationships} ContactRelationships
12
- * @property {ContactContactTypeAssociations} ContactContactTypeAssociations
13
- * @property {CompanyCompanyTypeAssociations} CompanyCompanyTypeAssociations
14
- * @property {CompanyTypes} CompanyTypes
15
- * @property {CompanyTypeInfos} CompanyTypeInfos
16
- * @property {CompanySites} CompanySites
17
- */
18
-
19
- /**
20
- *
21
- * @param options
22
- * @returns {CompanyAPI}
23
- * @constructor
24
- */
25
- function CompanyAPI(options) {
26
- const _Companies = require('./Companies');
27
- const _Contacts = require('./Contacts');
28
- const _Configurations = require('./Configurations');
29
- const _ContactRelationships = require('./ContactRelationships');
30
- const _ContactContactTypeAssociations = require('./ContactContactTypeAssociations');
31
- const _CompanyCompanyTypeAssociations = require('./CompanyCompanyTypeAssociations');
32
- const _CompanyTypes = require('./CompanyTypes');
33
- const _CompanyTypeInfos = require('./CompanyTypeInfos');
34
- const _CompanySites = require('./CompanySites');
35
-
36
- return {
37
- Companies: new _Companies(options),
38
- Contacts: new _Contacts(options),
39
- Configurations: new _Configurations(options),
40
- ContactRelationships: new _ContactRelationships(options),
41
- ContactContactTypeAssociations: new _ContactContactTypeAssociations(options),
42
- CompanyCompanyTypeAssociations: new _CompanyCompanyTypeAssociations(options),
43
- CompanyTypes: new _CompanyTypes(options),
44
- CompanyTypeInfos: new _CompanyTypeInfos(options),
45
- CompanySites: new _CompanySites(options),
46
- };
47
- }
48
-
49
- /**
50
- *
51
- * @type {CompanyAPI}
52
- */
53
- module.exports = CompanyAPI;