connectwise-ruby-sdk 1.0.1

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 (1106) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +201 -0
  3. data/README.md +1141 -0
  4. data/connectwise-ruby-sdk.gemspec +54 -0
  5. data/docs/AccountingBatchTransactionsApi.md +184 -0
  6. data/docs/AccountingBatchesApi.md +280 -0
  7. data/docs/AccountingUnpostedExpensesApi.md +175 -0
  8. data/docs/AccountingUnpostedProcurementsApi.md +175 -0
  9. data/docs/AccountingUnpostedinvoicesApi.md +175 -0
  10. data/docs/ActivitiesApi.md +392 -0
  11. data/docs/Activity.md +30 -0
  12. data/docs/ActivityReference.md +10 -0
  13. data/docs/ActivityStatus.md +14 -0
  14. data/docs/ActivityStatusReference.md +10 -0
  15. data/docs/ActivityStatusesApi.md +392 -0
  16. data/docs/ActivityType.md +15 -0
  17. data/docs/ActivityTypeReference.md +10 -0
  18. data/docs/ActivityTypesApi.md +392 -0
  19. data/docs/Addition.md +30 -0
  20. data/docs/Adjustment.md +13 -0
  21. data/docs/Agreement.md +76 -0
  22. data/docs/AgreementAdditionsApi.md +413 -0
  23. data/docs/AgreementAdjustmentsApi.md +413 -0
  24. data/docs/AgreementBoardDefaultsApi.md +413 -0
  25. data/docs/AgreementReference.md +10 -0
  26. data/docs/AgreementSite.md +12 -0
  27. data/docs/AgreementSitesApi.md +413 -0
  28. data/docs/AgreementType.md +61 -0
  29. data/docs/AgreementTypeReference.md +10 -0
  30. data/docs/AgreementTypesApi.md +392 -0
  31. data/docs/AgreementWorkRole.md +17 -0
  32. data/docs/AgreementWorkRoleExclusion.md +11 -0
  33. data/docs/AgreementWorkRoleExclusionsApi.md +239 -0
  34. data/docs/AgreementWorkRolesApi.md +413 -0
  35. data/docs/AgreementWorkType.md +25 -0
  36. data/docs/AgreementWorkTypeExclusion.md +11 -0
  37. data/docs/AgreementWorkTypeExclusionsApi.md +239 -0
  38. data/docs/AgreementWorkTypesApi.md +413 -0
  39. data/docs/AgreementsApi.md +671 -0
  40. data/docs/AuditTrailApi.md +180 -0
  41. data/docs/AuditTrailEntry.md +12 -0
  42. data/docs/AuditTrailEntryInsertRequest.md +9 -0
  43. data/docs/AuditTrailObjects.md +9 -0
  44. data/docs/Batch.md +24 -0
  45. data/docs/BatchReference.md +10 -0
  46. data/docs/BillingStatusReference.md +10 -0
  47. data/docs/BillingTermsReference.md +10 -0
  48. data/docs/Board.md +21 -0
  49. data/docs/BoardDefault.md +13 -0
  50. data/docs/BoardExcludedMembersApi.md +295 -0
  51. data/docs/BoardItemsApi.md +413 -0
  52. data/docs/BoardReference.md +10 -0
  53. data/docs/BoardStatusesApi.md +413 -0
  54. data/docs/BoardSubTypesApi.md +413 -0
  55. data/docs/BoardTeamsApi.md +413 -0
  56. data/docs/BoardTypesApi.md +469 -0
  57. data/docs/BoardsApi.md +392 -0
  58. data/docs/CalendarReference.md +10 -0
  59. data/docs/CallbackEntriesApi.md +392 -0
  60. data/docs/CallbackEntry.md +15 -0
  61. data/docs/Campaign.md +33 -0
  62. data/docs/CampaignAudit.md +16 -0
  63. data/docs/CampaignAuditsApi.md +413 -0
  64. data/docs/CampaignEmailsOpenedApi.md +413 -0
  65. data/docs/CampaignFormsSubmittedApi.md +413 -0
  66. data/docs/CampaignLinksClickedApi.md +413 -0
  67. data/docs/CampaignReference.md +10 -0
  68. data/docs/CampaignStatus.md +12 -0
  69. data/docs/CampaignStatusReference.md +10 -0
  70. data/docs/CampaignStatusesApi.md +392 -0
  71. data/docs/CampaignSubType.md +11 -0
  72. data/docs/CampaignSubTypeReference.md +10 -0
  73. data/docs/CampaignSubTypesApi.md +413 -0
  74. data/docs/CampaignType.md +11 -0
  75. data/docs/CampaignTypeReference.md +10 -0
  76. data/docs/CampaignTypesApi.md +392 -0
  77. data/docs/CampaignsApi.md +616 -0
  78. data/docs/CatalogComponent.md +19 -0
  79. data/docs/CatalogComponentsApi.md +413 -0
  80. data/docs/CatalogItem.md +33 -0
  81. data/docs/CatalogItemReference.md +10 -0
  82. data/docs/CatalogsItemApi.md +449 -0
  83. data/docs/CategoriesApi.md +392 -0
  84. data/docs/Category.md +16 -0
  85. data/docs/ChargeCodeReference.md +10 -0
  86. data/docs/ClassificationReference.md +10 -0
  87. data/docs/Code.md +14 -0
  88. data/docs/CodesApi.md +392 -0
  89. data/docs/CommunicationTypeReference.md +10 -0
  90. data/docs/CompaniesApi.md +448 -0
  91. data/docs/Company.md +53 -0
  92. data/docs/CompanyManagementSummary.md +42 -0
  93. data/docs/CompanyManagementSummaryReportsApi.md +413 -0
  94. data/docs/CompanyMerge.md +49 -0
  95. data/docs/CompanyNote.md +14 -0
  96. data/docs/CompanyNotesApi.md +413 -0
  97. data/docs/CompanyReference.md +11 -0
  98. data/docs/CompanySite.md +27 -0
  99. data/docs/CompanySitesApi.md +413 -0
  100. data/docs/CompanyStatus.md +18 -0
  101. data/docs/CompanyStatusReference.md +10 -0
  102. data/docs/CompanyStatusesApi.md +392 -0
  103. data/docs/CompanyTeam.md +18 -0
  104. data/docs/CompanyTeamsApi.md +413 -0
  105. data/docs/CompanyType.md +12 -0
  106. data/docs/CompanyTypeReference.md +10 -0
  107. data/docs/CompanyTypesApi.md +392 -0
  108. data/docs/Configuration.md +57 -0
  109. data/docs/ConfigurationQuestion.md +15 -0
  110. data/docs/ConfigurationReference.md +10 -0
  111. data/docs/ConfigurationStatus.md +12 -0
  112. data/docs/ConfigurationStatusReference.md +10 -0
  113. data/docs/ConfigurationStatusesApi.md +392 -0
  114. data/docs/ConfigurationType.md +12 -0
  115. data/docs/ConfigurationTypeQuestion.md +18 -0
  116. data/docs/ConfigurationTypeQuestionsApi.md +413 -0
  117. data/docs/ConfigurationTypeReference.md +10 -0
  118. data/docs/ConfigurationTypesApi.md +392 -0
  119. data/docs/ConfigurationsApi.md +444 -0
  120. data/docs/ConnectWiseHostedSetup.md +18 -0
  121. data/docs/ConnectWiseHostedSetupsApi.md +392 -0
  122. data/docs/Contact.md +47 -0
  123. data/docs/ContactCommunication.md +16 -0
  124. data/docs/ContactCommunicationItem.md +13 -0
  125. data/docs/ContactCommunicationsApi.md +413 -0
  126. data/docs/ContactDepartment.md +10 -0
  127. data/docs/ContactDepartmentReference.md +10 -0
  128. data/docs/ContactDepartmentsApi.md +392 -0
  129. data/docs/ContactNote.md +14 -0
  130. data/docs/ContactNotesApi.md +413 -0
  131. data/docs/ContactReference.md +10 -0
  132. data/docs/ContactRelationship.md +10 -0
  133. data/docs/ContactRelationshipsApi.md +392 -0
  134. data/docs/ContactTracksApi.md +295 -0
  135. data/docs/ContactType.md +11 -0
  136. data/docs/ContactTypeReference.md +10 -0
  137. data/docs/ContactTypesApi.md +392 -0
  138. data/docs/ContactsApi.md +612 -0
  139. data/docs/Conversion.md +12 -0
  140. data/docs/Count.md +8 -0
  141. data/docs/CountryReference.md +10 -0
  142. data/docs/CurrenciesApi.md +392 -0
  143. data/docs/Currency.md +15 -0
  144. data/docs/CurrencyReference.md +10 -0
  145. data/docs/CustomFieldValue.md +13 -0
  146. data/docs/DocumentInfo.md +17 -0
  147. data/docs/DocumentReference.md +9 -0
  148. data/docs/DocumentsApi.md +474 -0
  149. data/docs/EmailOpened.md +11 -0
  150. data/docs/EntityTypeReference.md +10 -0
  151. data/docs/Error.md +10 -0
  152. data/docs/ExcludedMember.md +11 -0
  153. data/docs/ExpenseEntriesApi.md +392 -0
  154. data/docs/ExpenseEntry.md +25 -0
  155. data/docs/ExpenseTax.md +10 -0
  156. data/docs/ExpenseTaxTypeReference.md +10 -0
  157. data/docs/ExpenseType.md +20 -0
  158. data/docs/ExpenseTypeReference.md +10 -0
  159. data/docs/ExpenseTypesApi.md +392 -0
  160. data/docs/FilterValues.md +9 -0
  161. data/docs/Forecast.md +19 -0
  162. data/docs/FormSubmitted.md +18 -0
  163. data/docs/GenericIdIdentifierReference.md +9 -0
  164. data/docs/Group.md +13 -0
  165. data/docs/GroupCompaniesApi.md +413 -0
  166. data/docs/GroupContactsApi.md +413 -0
  167. data/docs/GroupReference.md +10 -0
  168. data/docs/GroupsApi.md +392 -0
  169. data/docs/Guid.md +7 -0
  170. data/docs/Info.md +10 -0
  171. data/docs/InfoApi.md +55 -0
  172. data/docs/IntegratorLogin.md +65 -0
  173. data/docs/Invoice.md +54 -0
  174. data/docs/InvoicePaymentsApi.md +356 -0
  175. data/docs/InvoiceReference.md +10 -0
  176. data/docs/InvoicesApi.md +444 -0
  177. data/docs/Item.md +16 -0
  178. data/docs/IvItemReference.md +10 -0
  179. data/docs/JObject.md +7 -0
  180. data/docs/KnowledgeBaseArticle.md +19 -0
  181. data/docs/KnowledgeBaseArticlesApi.md +392 -0
  182. data/docs/Link.md +12 -0
  183. data/docs/LinkClicked.md +13 -0
  184. data/docs/LinksApi.md +392 -0
  185. data/docs/Location.md +12 -0
  186. data/docs/LocationsApi.md +392 -0
  187. data/docs/ManagementSolutionReference.md +10 -0
  188. data/docs/Manufacturer.md +11 -0
  189. data/docs/ManufacturerReference.md +10 -0
  190. data/docs/ManufacturersApi.md +392 -0
  191. data/docs/MarketingCompany.md +13 -0
  192. data/docs/MarketingContact.md +12 -0
  193. data/docs/Member.md +94 -0
  194. data/docs/MemberReference.md +11 -0
  195. data/docs/MemberTypeReference.md +10 -0
  196. data/docs/MembersApi.md +286 -0
  197. data/docs/MenuEntriesApi.md +502 -0
  198. data/docs/MenuEntry.md +17 -0
  199. data/docs/MenuLocationReference.md +10 -0
  200. data/docs/Metadata.md +7 -0
  201. data/docs/NoteTypeReference.md +10 -0
  202. data/docs/OpportunitiesApi.md +616 -0
  203. data/docs/Opportunity.md +40 -0
  204. data/docs/OpportunityContact.md +17 -0
  205. data/docs/OpportunityContactsApi.md +413 -0
  206. data/docs/OpportunityForecastsApi.md +413 -0
  207. data/docs/OpportunityNote.md +15 -0
  208. data/docs/OpportunityNotesApi.md +413 -0
  209. data/docs/OpportunityPriorityReference.md +10 -0
  210. data/docs/OpportunityProbabilityReference.md +10 -0
  211. data/docs/OpportunityRating.md +11 -0
  212. data/docs/OpportunityRatingReference.md +10 -0
  213. data/docs/OpportunityRatingsApi.md +392 -0
  214. data/docs/OpportunityReference.md +10 -0
  215. data/docs/OpportunitySalesRoleReference.md +10 -0
  216. data/docs/OpportunityStageReference.md +10 -0
  217. data/docs/OpportunityStatus.md +17 -0
  218. data/docs/OpportunityStatusReference.md +10 -0
  219. data/docs/OpportunityStatusesApi.md +392 -0
  220. data/docs/OpportunityTeamsApi.md +413 -0
  221. data/docs/OpportunityToAgreementConversion.md +22 -0
  222. data/docs/OpportunityToProjectConversion.md +22 -0
  223. data/docs/OpportunityToSalesOrderConversion.md +15 -0
  224. data/docs/OpportunityToServiceTicketConversion.md +15 -0
  225. data/docs/OpportunityType.md +11 -0
  226. data/docs/OpportunityTypeReference.md +10 -0
  227. data/docs/OpportunityTypesApi.md +392 -0
  228. data/docs/Order.md +44 -0
  229. data/docs/OrderStatus.md +14 -0
  230. data/docs/OrderStatusReference.md +10 -0
  231. data/docs/OrderStatusesApi.md +392 -0
  232. data/docs/OrdersApi.md +392 -0
  233. data/docs/OwnershipTypeReference.md +10 -0
  234. data/docs/PatchOperation.md +10 -0
  235. data/docs/Payment.md +14 -0
  236. data/docs/PaymentMethodReference.md +10 -0
  237. data/docs/PhaseStatusReference.md +10 -0
  238. data/docs/PortalSecurity.md +9 -0
  239. data/docs/PricingBreak.md +14 -0
  240. data/docs/PricingBreaksApi.md +434 -0
  241. data/docs/PricingDetail.md +14 -0
  242. data/docs/PricingDetailsApi.md +413 -0
  243. data/docs/PricingSchedule.md +15 -0
  244. data/docs/PricingSchedulesApi.md +392 -0
  245. data/docs/PrioritiesApi.md +450 -0
  246. data/docs/Priority.md +14 -0
  247. data/docs/PriorityReference.md +11 -0
  248. data/docs/ProductCategoryReference.md +10 -0
  249. data/docs/ProductComponent.md +21 -0
  250. data/docs/ProductComponentsApi.md +413 -0
  251. data/docs/ProductItem.md +51 -0
  252. data/docs/ProductItemReference.md +10 -0
  253. data/docs/ProductPickingShippingDetail.md +20 -0
  254. data/docs/ProductPickingShippingDetailsApi.md +413 -0
  255. data/docs/ProductRecurring.md +14 -0
  256. data/docs/ProductReference.md +10 -0
  257. data/docs/ProductSubCategoryReference.md +10 -0
  258. data/docs/ProductType.md +12 -0
  259. data/docs/ProductTypeReference.md +10 -0
  260. data/docs/ProductTypesApi.md +392 -0
  261. data/docs/ProductsItemApi.md +392 -0
  262. data/docs/Project.md +61 -0
  263. data/docs/ProjectBoardReference.md +10 -0
  264. data/docs/ProjectContact.md +11 -0
  265. data/docs/ProjectContactsApi.md +238 -0
  266. data/docs/ProjectNote.md +13 -0
  267. data/docs/ProjectNotesApi.md +413 -0
  268. data/docs/ProjectPhase.md +34 -0
  269. data/docs/ProjectPhaseReference.md +10 -0
  270. data/docs/ProjectPhasesApi.md +413 -0
  271. data/docs/ProjectReference.md +10 -0
  272. data/docs/ProjectRoleReference.md +10 -0
  273. data/docs/ProjectStatusReference.md +10 -0
  274. data/docs/ProjectTeamMember.md +16 -0
  275. data/docs/ProjectTypeReference.md +10 -0
  276. data/docs/ProjectsApi.md +392 -0
  277. data/docs/ProjectsTeamMembersApi.md +413 -0
  278. data/docs/PurchaseOrder.md +56 -0
  279. data/docs/PurchaseOrderLineItem.md +35 -0
  280. data/docs/PurchaseOrderLineItemsApi.md +413 -0
  281. data/docs/PurchaseOrderReference.md +10 -0
  282. data/docs/PurchaseOrderStatusReference.md +10 -0
  283. data/docs/PurchaseOrdersApi.md +392 -0
  284. data/docs/RelationshipReference.md +10 -0
  285. data/docs/ReminderReference.md +10 -0
  286. data/docs/Report.md +8 -0
  287. data/docs/ReportDataResponse.md +9 -0
  288. data/docs/ReportsApi.md +239 -0
  289. data/docs/RequestPasswordRequest.md +8 -0
  290. data/docs/SLAReference.md +10 -0
  291. data/docs/SalesTeamReference.md +10 -0
  292. data/docs/ScheduleEntriesApi.md +392 -0
  293. data/docs/ScheduleEntry.md +27 -0
  294. data/docs/ScheduleEntryReference.md +10 -0
  295. data/docs/ScheduleSpanReference.md +10 -0
  296. data/docs/ScheduleStatus.md +12 -0
  297. data/docs/ScheduleStatusReference.md +10 -0
  298. data/docs/ScheduleStatusesApi.md +392 -0
  299. data/docs/ScheduleType.md +14 -0
  300. data/docs/ScheduleTypeReference.md +10 -0
  301. data/docs/ScheduleTypesApi.md +392 -0
  302. data/docs/SecurityRoleReference.md +10 -0
  303. data/docs/ServiceCodeReference.md +10 -0
  304. data/docs/ServiceItemReference.md +10 -0
  305. data/docs/ServiceLocationReference.md +10 -0
  306. data/docs/ServiceNote.md +22 -0
  307. data/docs/ServiceSignoffReference.md +10 -0
  308. data/docs/ServiceSourceReference.md +10 -0
  309. data/docs/ServiceStatusReference.md +10 -0
  310. data/docs/ServiceSubTypeReference.md +10 -0
  311. data/docs/ServiceTeamReference.md +10 -0
  312. data/docs/ServiceTypeReference.md +10 -0
  313. data/docs/ShipmentMethod.md +13 -0
  314. data/docs/ShipmentMethodReference.md +10 -0
  315. data/docs/ShipmentMethodsApi.md +392 -0
  316. data/docs/SicCodeReference.md +10 -0
  317. data/docs/SiteReference.md +10 -0
  318. data/docs/Source.md +13 -0
  319. data/docs/SourcesApi.md +392 -0
  320. data/docs/Status.md +18 -0
  321. data/docs/SubCategoriesApi.md +413 -0
  322. data/docs/SubCategory.md +11 -0
  323. data/docs/SubType.md +15 -0
  324. data/docs/SuccessResponse.md +9 -0
  325. data/docs/Survey.md +20 -0
  326. data/docs/SurveyQuestion.md +17 -0
  327. data/docs/SurveyQuestionOption.md +10 -0
  328. data/docs/SurveyQuestionsApi.md +413 -0
  329. data/docs/SurveyResult.md +18 -0
  330. data/docs/SurveyResultDetail.md +9 -0
  331. data/docs/SurveyResultsApi.md +413 -0
  332. data/docs/SurveysApi.md +392 -0
  333. data/docs/Task.md +18 -0
  334. data/docs/TaxCodeReference.md +10 -0
  335. data/docs/Team.md +24 -0
  336. data/docs/TeamRoleReference.md +10 -0
  337. data/docs/Ticket.md +96 -0
  338. data/docs/TicketNotesApi.md +413 -0
  339. data/docs/TicketReference.md +10 -0
  340. data/docs/TicketTasksApi.md +413 -0
  341. data/docs/TicketsApi.md +1290 -0
  342. data/docs/TimeEntriesApi.md +392 -0
  343. data/docs/TimeEntry.md +36 -0
  344. data/docs/TimeEntryReference.md +9 -0
  345. data/docs/TimeZoneReference.md +10 -0
  346. data/docs/Token.md +10 -0
  347. data/docs/Track.md +18 -0
  348. data/docs/TrackReference.md +10 -0
  349. data/docs/Transaction.md +67 -0
  350. data/docs/Type.md +17 -0
  351. data/docs/TypeAssociations.md +9 -0
  352. data/docs/UnitOfMeasure.md +13 -0
  353. data/docs/UnitOfMeasureConversionsApi.md +413 -0
  354. data/docs/UnitOfMeasureReference.md +10 -0
  355. data/docs/UnitsOfMeasureApi.md +392 -0
  356. data/docs/UnpostedExpense.md +53 -0
  357. data/docs/UnpostedInvoice.md +50 -0
  358. data/docs/UnpostedProcurement.md +48 -0
  359. data/docs/UserDefinedField.md +29 -0
  360. data/docs/UserDefinedFieldOption.md +12 -0
  361. data/docs/UserDefinedFieldsApi.md +392 -0
  362. data/docs/ValidatePortalRequest.md +9 -0
  363. data/docs/ValidatePortalResponse.md +9 -0
  364. data/docs/ValidationError.md +11 -0
  365. data/docs/WarehouseBinReference.md +10 -0
  366. data/docs/WarehouseReference.md +10 -0
  367. data/docs/WorkRoleReference.md +10 -0
  368. data/docs/WorkTypeReference.md +10 -0
  369. data/git_push.sh +67 -0
  370. data/lib/connectwise-ruby-sdk.rb +414 -0
  371. data/lib/connectwise-ruby-sdk/api/accounting_batch_transactions_api.rb +224 -0
  372. data/lib/connectwise-ruby-sdk/api/accounting_batches_api.rb +325 -0
  373. data/lib/connectwise-ruby-sdk/api/accounting_unposted_expenses_api.rb +212 -0
  374. data/lib/connectwise-ruby-sdk/api/accounting_unposted_procurements_api.rb +212 -0
  375. data/lib/connectwise-ruby-sdk/api/accounting_unpostedinvoices_api.rb +212 -0
  376. data/lib/connectwise-ruby-sdk/api/activities_api.rb +447 -0
  377. data/lib/connectwise-ruby-sdk/api/activity_statuses_api.rb +447 -0
  378. data/lib/connectwise-ruby-sdk/api/activity_types_api.rb +447 -0
  379. data/lib/connectwise-ruby-sdk/api/agreement_additions_api.rb +475 -0
  380. data/lib/connectwise-ruby-sdk/api/agreement_adjustments_api.rb +475 -0
  381. data/lib/connectwise-ruby-sdk/api/agreement_board_defaults_api.rb +475 -0
  382. data/lib/connectwise-ruby-sdk/api/agreement_sites_api.rb +475 -0
  383. data/lib/connectwise-ruby-sdk/api/agreement_types_api.rb +447 -0
  384. data/lib/connectwise-ruby-sdk/api/agreement_work_role_exclusions_api.rb +284 -0
  385. data/lib/connectwise-ruby-sdk/api/agreement_work_roles_api.rb +475 -0
  386. data/lib/connectwise-ruby-sdk/api/agreement_work_type_exclusions_api.rb +284 -0
  387. data/lib/connectwise-ruby-sdk/api/agreement_work_types_api.rb +475 -0
  388. data/lib/connectwise-ruby-sdk/api/agreements_api.rb +749 -0
  389. data/lib/connectwise-ruby-sdk/api/audit_trail_api.rb +226 -0
  390. data/lib/connectwise-ruby-sdk/api/board_excluded_members_api.rb +345 -0
  391. data/lib/connectwise-ruby-sdk/api/board_items_api.rb +475 -0
  392. data/lib/connectwise-ruby-sdk/api/board_statuses_api.rb +475 -0
  393. data/lib/connectwise-ruby-sdk/api/board_sub_types_api.rb +475 -0
  394. data/lib/connectwise-ruby-sdk/api/board_teams_api.rb +475 -0
  395. data/lib/connectwise-ruby-sdk/api/board_types_api.rb +536 -0
  396. data/lib/connectwise-ruby-sdk/api/boards_api.rb +447 -0
  397. data/lib/connectwise-ruby-sdk/api/callback_entries_api.rb +447 -0
  398. data/lib/connectwise-ruby-sdk/api/campaign_audits_api.rb +475 -0
  399. data/lib/connectwise-ruby-sdk/api/campaign_emails_opened_api.rb +475 -0
  400. data/lib/connectwise-ruby-sdk/api/campaign_forms_submitted_api.rb +475 -0
  401. data/lib/connectwise-ruby-sdk/api/campaign_links_clicked_api.rb +475 -0
  402. data/lib/connectwise-ruby-sdk/api/campaign_statuses_api.rb +447 -0
  403. data/lib/connectwise-ruby-sdk/api/campaign_sub_types_api.rb +475 -0
  404. data/lib/connectwise-ruby-sdk/api/campaign_types_api.rb +447 -0
  405. data/lib/connectwise-ruby-sdk/api/campaigns_api.rb +687 -0
  406. data/lib/connectwise-ruby-sdk/api/catalog_components_api.rb +475 -0
  407. data/lib/connectwise-ruby-sdk/api/catalogs_item_api.rb +507 -0
  408. data/lib/connectwise-ruby-sdk/api/categories_api.rb +447 -0
  409. data/lib/connectwise-ruby-sdk/api/codes_api.rb +447 -0
  410. data/lib/connectwise-ruby-sdk/api/companies_api.rb +508 -0
  411. data/lib/connectwise-ruby-sdk/api/company_management_summary_reports_api.rb +475 -0
  412. data/lib/connectwise-ruby-sdk/api/company_notes_api.rb +475 -0
  413. data/lib/connectwise-ruby-sdk/api/company_sites_api.rb +475 -0
  414. data/lib/connectwise-ruby-sdk/api/company_statuses_api.rb +447 -0
  415. data/lib/connectwise-ruby-sdk/api/company_teams_api.rb +475 -0
  416. data/lib/connectwise-ruby-sdk/api/company_types_api.rb +447 -0
  417. data/lib/connectwise-ruby-sdk/api/configuration_statuses_api.rb +447 -0
  418. data/lib/connectwise-ruby-sdk/api/configuration_type_questions_api.rb +475 -0
  419. data/lib/connectwise-ruby-sdk/api/configuration_types_api.rb +447 -0
  420. data/lib/connectwise-ruby-sdk/api/configurations_api.rb +525 -0
  421. data/lib/connectwise-ruby-sdk/api/connect_wise_hosted_setups_api.rb +447 -0
  422. data/lib/connectwise-ruby-sdk/api/contact_communications_api.rb +475 -0
  423. data/lib/connectwise-ruby-sdk/api/contact_departments_api.rb +447 -0
  424. data/lib/connectwise-ruby-sdk/api/contact_notes_api.rb +475 -0
  425. data/lib/connectwise-ruby-sdk/api/contact_relationships_api.rb +447 -0
  426. data/lib/connectwise-ruby-sdk/api/contact_tracks_api.rb +345 -0
  427. data/lib/connectwise-ruby-sdk/api/contact_types_api.rb +447 -0
  428. data/lib/connectwise-ruby-sdk/api/contacts_api.rb +682 -0
  429. data/lib/connectwise-ruby-sdk/api/currencies_api.rb +447 -0
  430. data/lib/connectwise-ruby-sdk/api/documents_api.rb +580 -0
  431. data/lib/connectwise-ruby-sdk/api/expense_entries_api.rb +447 -0
  432. data/lib/connectwise-ruby-sdk/api/expense_types_api.rb +447 -0
  433. data/lib/connectwise-ruby-sdk/api/group_companies_api.rb +475 -0
  434. data/lib/connectwise-ruby-sdk/api/group_contacts_api.rb +475 -0
  435. data/lib/connectwise-ruby-sdk/api/groups_api.rb +447 -0
  436. data/lib/connectwise-ruby-sdk/api/info_api.rb +87 -0
  437. data/lib/connectwise-ruby-sdk/api/invoice_payments_api.rb +415 -0
  438. data/lib/connectwise-ruby-sdk/api/invoices_api.rb +503 -0
  439. data/lib/connectwise-ruby-sdk/api/knowledge_base_articles_api.rb +447 -0
  440. data/lib/connectwise-ruby-sdk/api/links_api.rb +447 -0
  441. data/lib/connectwise-ruby-sdk/api/locations_api.rb +447 -0
  442. data/lib/connectwise-ruby-sdk/api/manufacturers_api.rb +447 -0
  443. data/lib/connectwise-ruby-sdk/api/members_api.rb +331 -0
  444. data/lib/connectwise-ruby-sdk/api/menu_entries_api.rb +565 -0
  445. data/lib/connectwise-ruby-sdk/api/opportunities_api.rb +691 -0
  446. data/lib/connectwise-ruby-sdk/api/opportunity_contacts_api.rb +475 -0
  447. data/lib/connectwise-ruby-sdk/api/opportunity_forecasts_api.rb +475 -0
  448. data/lib/connectwise-ruby-sdk/api/opportunity_notes_api.rb +475 -0
  449. data/lib/connectwise-ruby-sdk/api/opportunity_ratings_api.rb +447 -0
  450. data/lib/connectwise-ruby-sdk/api/opportunity_statuses_api.rb +447 -0
  451. data/lib/connectwise-ruby-sdk/api/opportunity_teams_api.rb +475 -0
  452. data/lib/connectwise-ruby-sdk/api/opportunity_types_api.rb +447 -0
  453. data/lib/connectwise-ruby-sdk/api/order_statuses_api.rb +447 -0
  454. data/lib/connectwise-ruby-sdk/api/orders_api.rb +447 -0
  455. data/lib/connectwise-ruby-sdk/api/pricing_breaks_api.rb +503 -0
  456. data/lib/connectwise-ruby-sdk/api/pricing_details_api.rb +475 -0
  457. data/lib/connectwise-ruby-sdk/api/pricing_schedules_api.rb +447 -0
  458. data/lib/connectwise-ruby-sdk/api/priorities_api.rb +509 -0
  459. data/lib/connectwise-ruby-sdk/api/product_components_api.rb +475 -0
  460. data/lib/connectwise-ruby-sdk/api/product_picking_shipping_details_api.rb +475 -0
  461. data/lib/connectwise-ruby-sdk/api/product_types_api.rb +447 -0
  462. data/lib/connectwise-ruby-sdk/api/products_item_api.rb +447 -0
  463. data/lib/connectwise-ruby-sdk/api/project_contacts_api.rb +285 -0
  464. data/lib/connectwise-ruby-sdk/api/project_notes_api.rb +475 -0
  465. data/lib/connectwise-ruby-sdk/api/project_phases_api.rb +475 -0
  466. data/lib/connectwise-ruby-sdk/api/projects_api.rb +447 -0
  467. data/lib/connectwise-ruby-sdk/api/projects_team_members_api.rb +475 -0
  468. data/lib/connectwise-ruby-sdk/api/purchase_order_line_items_api.rb +475 -0
  469. data/lib/connectwise-ruby-sdk/api/purchase_orders_api.rb +447 -0
  470. data/lib/connectwise-ruby-sdk/api/reports_api.rb +282 -0
  471. data/lib/connectwise-ruby-sdk/api/schedule_entries_api.rb +447 -0
  472. data/lib/connectwise-ruby-sdk/api/schedule_statuses_api.rb +447 -0
  473. data/lib/connectwise-ruby-sdk/api/schedule_types_api.rb +447 -0
  474. data/lib/connectwise-ruby-sdk/api/shipment_methods_api.rb +447 -0
  475. data/lib/connectwise-ruby-sdk/api/sources_api.rb +447 -0
  476. data/lib/connectwise-ruby-sdk/api/sub_categories_api.rb +475 -0
  477. data/lib/connectwise-ruby-sdk/api/survey_questions_api.rb +475 -0
  478. data/lib/connectwise-ruby-sdk/api/survey_results_api.rb +475 -0
  479. data/lib/connectwise-ruby-sdk/api/surveys_api.rb +447 -0
  480. data/lib/connectwise-ruby-sdk/api/ticket_notes_api.rb +475 -0
  481. data/lib/connectwise-ruby-sdk/api/ticket_tasks_api.rb +475 -0
  482. data/lib/connectwise-ruby-sdk/api/tickets_api.rb +1412 -0
  483. data/lib/connectwise-ruby-sdk/api/time_entries_api.rb +447 -0
  484. data/lib/connectwise-ruby-sdk/api/unit_of_measure_conversions_api.rb +475 -0
  485. data/lib/connectwise-ruby-sdk/api/units_of_measure_api.rb +447 -0
  486. data/lib/connectwise-ruby-sdk/api/user_defined_fields_api.rb +447 -0
  487. data/lib/connectwise-ruby-sdk/api_client.rb +379 -0
  488. data/lib/connectwise-ruby-sdk/api_error.rb +47 -0
  489. data/lib/connectwise-ruby-sdk/configuration.rb +214 -0
  490. data/lib/connectwise-ruby-sdk/models/activity.rb +448 -0
  491. data/lib/connectwise-ruby-sdk/models/activity_reference.rb +218 -0
  492. data/lib/connectwise-ruby-sdk/models/activity_status.rb +270 -0
  493. data/lib/connectwise-ruby-sdk/models/activity_status_reference.rb +218 -0
  494. data/lib/connectwise-ruby-sdk/models/activity_type.rb +279 -0
  495. data/lib/connectwise-ruby-sdk/models/activity_type_reference.rb +218 -0
  496. data/lib/connectwise-ruby-sdk/models/addition.rb +463 -0
  497. data/lib/connectwise-ruby-sdk/models/adjustment.rb +260 -0
  498. data/lib/connectwise-ruby-sdk/models/agreement.rb +1020 -0
  499. data/lib/connectwise-ruby-sdk/models/agreement_reference.rb +218 -0
  500. data/lib/connectwise-ruby-sdk/models/agreement_site.rb +237 -0
  501. data/lib/connectwise-ruby-sdk/models/agreement_type.rb +859 -0
  502. data/lib/connectwise-ruby-sdk/models/agreement_type_reference.rb +218 -0
  503. data/lib/connectwise-ruby-sdk/models/agreement_work_role.rb +315 -0
  504. data/lib/connectwise-ruby-sdk/models/agreement_work_role_exclusion.rb +228 -0
  505. data/lib/connectwise-ruby-sdk/models/agreement_work_type.rb +412 -0
  506. data/lib/connectwise-ruby-sdk/models/agreement_work_type_exclusion.rb +228 -0
  507. data/lib/connectwise-ruby-sdk/models/audit_trail_entry.rb +235 -0
  508. data/lib/connectwise-ruby-sdk/models/audit_trail_entry_insert_request.rb +226 -0
  509. data/lib/connectwise-ruby-sdk/models/audit_trail_objects.rb +245 -0
  510. data/lib/connectwise-ruby-sdk/models/batch.rb +372 -0
  511. data/lib/connectwise-ruby-sdk/models/batch_reference.rb +218 -0
  512. data/lib/connectwise-ruby-sdk/models/billing_status_reference.rb +218 -0
  513. data/lib/connectwise-ruby-sdk/models/billing_terms_reference.rb +218 -0
  514. data/lib/connectwise-ruby-sdk/models/board.rb +337 -0
  515. data/lib/connectwise-ruby-sdk/models/board_default.rb +246 -0
  516. data/lib/connectwise-ruby-sdk/models/board_reference.rb +218 -0
  517. data/lib/connectwise-ruby-sdk/models/calendar_reference.rb +218 -0
  518. data/lib/connectwise-ruby-sdk/models/callback_entry.rb +282 -0
  519. data/lib/connectwise-ruby-sdk/models/campaign.rb +444 -0
  520. data/lib/connectwise-ruby-sdk/models/campaign_audit.rb +347 -0
  521. data/lib/connectwise-ruby-sdk/models/campaign_reference.rb +218 -0
  522. data/lib/connectwise-ruby-sdk/models/campaign_status.rb +252 -0
  523. data/lib/connectwise-ruby-sdk/models/campaign_status_reference.rb +218 -0
  524. data/lib/connectwise-ruby-sdk/models/campaign_sub_type.rb +243 -0
  525. data/lib/connectwise-ruby-sdk/models/campaign_sub_type_reference.rb +218 -0
  526. data/lib/connectwise-ruby-sdk/models/campaign_type.rb +243 -0
  527. data/lib/connectwise-ruby-sdk/models/campaign_type_reference.rb +218 -0
  528. data/lib/connectwise-ruby-sdk/models/catalog_component.rb +301 -0
  529. data/lib/connectwise-ruby-sdk/models/catalog_item.rb +566 -0
  530. data/lib/connectwise-ruby-sdk/models/catalog_item_reference.rb +218 -0
  531. data/lib/connectwise-ruby-sdk/models/category.rb +320 -0
  532. data/lib/connectwise-ruby-sdk/models/charge_code_reference.rb +218 -0
  533. data/lib/connectwise-ruby-sdk/models/classification_reference.rb +218 -0
  534. data/lib/connectwise-ruby-sdk/models/code.rb +271 -0
  535. data/lib/connectwise-ruby-sdk/models/communication_type_reference.rb +218 -0
  536. data/lib/connectwise-ruby-sdk/models/company.rb +942 -0
  537. data/lib/connectwise-ruby-sdk/models/company_management_summary.rb +556 -0
  538. data/lib/connectwise-ruby-sdk/models/company_merge.rb +1082 -0
  539. data/lib/connectwise-ruby-sdk/models/company_note.rb +255 -0
  540. data/lib/connectwise-ruby-sdk/models/company_reference.rb +227 -0
  541. data/lib/connectwise-ruby-sdk/models/company_site.rb +492 -0
  542. data/lib/connectwise-ruby-sdk/models/company_status.rb +321 -0
  543. data/lib/connectwise-ruby-sdk/models/company_status_reference.rb +218 -0
  544. data/lib/connectwise-ruby-sdk/models/company_team.rb +291 -0
  545. data/lib/connectwise-ruby-sdk/models/company_type.rb +252 -0
  546. data/lib/connectwise-ruby-sdk/models/company_type_reference.rb +218 -0
  547. data/lib/connectwise-ruby-sdk/models/configuration.rb +888 -0
  548. data/lib/connectwise-ruby-sdk/models/configuration_question.rb +295 -0
  549. data/lib/connectwise-ruby-sdk/models/configuration_reference.rb +218 -0
  550. data/lib/connectwise-ruby-sdk/models/configuration_status.rb +252 -0
  551. data/lib/connectwise-ruby-sdk/models/configuration_status_reference.rb +218 -0
  552. data/lib/connectwise-ruby-sdk/models/configuration_type.rb +252 -0
  553. data/lib/connectwise-ruby-sdk/models/configuration_type_question.rb +375 -0
  554. data/lib/connectwise-ruby-sdk/models/configuration_type_reference.rb +218 -0
  555. data/lib/connectwise-ruby-sdk/models/connect_wise_hosted_setup.rb +373 -0
  556. data/lib/connectwise-ruby-sdk/models/contact.rb +831 -0
  557. data/lib/connectwise-ruby-sdk/models/contact_communication.rb +337 -0
  558. data/lib/connectwise-ruby-sdk/models/contact_communication_item.rb +309 -0
  559. data/lib/connectwise-ruby-sdk/models/contact_department.rb +234 -0
  560. data/lib/connectwise-ruby-sdk/models/contact_department_reference.rb +218 -0
  561. data/lib/connectwise-ruby-sdk/models/contact_note.rb +255 -0
  562. data/lib/connectwise-ruby-sdk/models/contact_reference.rb +218 -0
  563. data/lib/connectwise-ruby-sdk/models/contact_relationship.rb +234 -0
  564. data/lib/connectwise-ruby-sdk/models/contact_type.rb +243 -0
  565. data/lib/connectwise-ruby-sdk/models/contact_type_reference.rb +218 -0
  566. data/lib/connectwise-ruby-sdk/models/conversion.rb +238 -0
  567. data/lib/connectwise-ruby-sdk/models/count.rb +199 -0
  568. data/lib/connectwise-ruby-sdk/models/country_reference.rb +218 -0
  569. data/lib/connectwise-ruby-sdk/models/currency.rb +324 -0
  570. data/lib/connectwise-ruby-sdk/models/currency_reference.rb +218 -0
  571. data/lib/connectwise-ruby-sdk/models/custom_field_value.rb +289 -0
  572. data/lib/connectwise-ruby-sdk/models/document_info.rb +281 -0
  573. data/lib/connectwise-ruby-sdk/models/document_reference.rb +209 -0
  574. data/lib/connectwise-ruby-sdk/models/email_opened.rb +227 -0
  575. data/lib/connectwise-ruby-sdk/models/entity_type_reference.rb +218 -0
  576. data/lib/connectwise-ruby-sdk/models/error.rb +219 -0
  577. data/lib/connectwise-ruby-sdk/models/excluded_member.rb +228 -0
  578. data/lib/connectwise-ruby-sdk/models/expense_entry.rb +404 -0
  579. data/lib/connectwise-ruby-sdk/models/expense_tax.rb +217 -0
  580. data/lib/connectwise-ruby-sdk/models/expense_tax_type_reference.rb +218 -0
  581. data/lib/connectwise-ruby-sdk/models/expense_type.rb +372 -0
  582. data/lib/connectwise-ruby-sdk/models/expense_type_reference.rb +218 -0
  583. data/lib/connectwise-ruby-sdk/models/filter_values.rb +208 -0
  584. data/lib/connectwise-ruby-sdk/models/forecast.rb +348 -0
  585. data/lib/connectwise-ruby-sdk/models/form_submitted.rb +306 -0
  586. data/lib/connectwise-ruby-sdk/models/generic_id_identifier_reference.rb +208 -0
  587. data/lib/connectwise-ruby-sdk/models/group.rb +261 -0
  588. data/lib/connectwise-ruby-sdk/models/group_reference.rb +218 -0
  589. data/lib/connectwise-ruby-sdk/models/guid.rb +190 -0
  590. data/lib/connectwise-ruby-sdk/models/info.rb +217 -0
  591. data/lib/connectwise-ruby-sdk/models/integrator_login.rb +930 -0
  592. data/lib/connectwise-ruby-sdk/models/invoice.rb +722 -0
  593. data/lib/connectwise-ruby-sdk/models/invoice_reference.rb +218 -0
  594. data/lib/connectwise-ruby-sdk/models/item.rb +290 -0
  595. data/lib/connectwise-ruby-sdk/models/iv_item_reference.rb +218 -0
  596. data/lib/connectwise-ruby-sdk/models/j_object.rb +190 -0
  597. data/lib/connectwise-ruby-sdk/models/knowledge_base_article.rb +302 -0
  598. data/lib/connectwise-ruby-sdk/models/link.rb +268 -0
  599. data/lib/connectwise-ruby-sdk/models/link_clicked.rb +261 -0
  600. data/lib/connectwise-ruby-sdk/models/location.rb +286 -0
  601. data/lib/connectwise-ruby-sdk/models/management_solution_reference.rb +218 -0
  602. data/lib/connectwise-ruby-sdk/models/manufacturer.rb +243 -0
  603. data/lib/connectwise-ruby-sdk/models/manufacturer_reference.rb +218 -0
  604. data/lib/connectwise-ruby-sdk/models/marketing_company.rb +246 -0
  605. data/lib/connectwise-ruby-sdk/models/marketing_contact.rb +252 -0
  606. data/lib/connectwise-ruby-sdk/models/member.rb +1245 -0
  607. data/lib/connectwise-ruby-sdk/models/member_reference.rb +227 -0
  608. data/lib/connectwise-ruby-sdk/models/member_type_reference.rb +218 -0
  609. data/lib/connectwise-ruby-sdk/models/menu_entry.rb +332 -0
  610. data/lib/connectwise-ruby-sdk/models/menu_location_reference.rb +218 -0
  611. data/lib/connectwise-ruby-sdk/models/metadata.rb +190 -0
  612. data/lib/connectwise-ruby-sdk/models/note_type_reference.rb +218 -0
  613. data/lib/connectwise-ruby-sdk/models/opportunity.rb +540 -0
  614. data/lib/connectwise-ruby-sdk/models/opportunity_contact.rb +282 -0
  615. data/lib/connectwise-ruby-sdk/models/opportunity_note.rb +264 -0
  616. data/lib/connectwise-ruby-sdk/models/opportunity_priority_reference.rb +218 -0
  617. data/lib/connectwise-ruby-sdk/models/opportunity_probability_reference.rb +218 -0
  618. data/lib/connectwise-ruby-sdk/models/opportunity_rating.rb +243 -0
  619. data/lib/connectwise-ruby-sdk/models/opportunity_rating_reference.rb +218 -0
  620. data/lib/connectwise-ruby-sdk/models/opportunity_reference.rb +218 -0
  621. data/lib/connectwise-ruby-sdk/models/opportunity_sales_role_reference.rb +218 -0
  622. data/lib/connectwise-ruby-sdk/models/opportunity_stage_reference.rb +218 -0
  623. data/lib/connectwise-ruby-sdk/models/opportunity_status.rb +297 -0
  624. data/lib/connectwise-ruby-sdk/models/opportunity_status_reference.rb +218 -0
  625. data/lib/connectwise-ruby-sdk/models/opportunity_to_agreement_conversion.rb +331 -0
  626. data/lib/connectwise-ruby-sdk/models/opportunity_to_project_conversion.rb +331 -0
  627. data/lib/connectwise-ruby-sdk/models/opportunity_to_sales_order_conversion.rb +268 -0
  628. data/lib/connectwise-ruby-sdk/models/opportunity_to_service_ticket_conversion.rb +268 -0
  629. data/lib/connectwise-ruby-sdk/models/opportunity_type.rb +243 -0
  630. data/lib/connectwise-ruby-sdk/models/opportunity_type_reference.rb +218 -0
  631. data/lib/connectwise-ruby-sdk/models/order.rb +550 -0
  632. data/lib/connectwise-ruby-sdk/models/order_status.rb +270 -0
  633. data/lib/connectwise-ruby-sdk/models/order_status_reference.rb +218 -0
  634. data/lib/connectwise-ruby-sdk/models/ownership_type_reference.rb +218 -0
  635. data/lib/connectwise-ruby-sdk/models/patch_operation.rb +217 -0
  636. data/lib/connectwise-ruby-sdk/models/payment.rb +255 -0
  637. data/lib/connectwise-ruby-sdk/models/payment_method_reference.rb +218 -0
  638. data/lib/connectwise-ruby-sdk/models/phase_status_reference.rb +218 -0
  639. data/lib/connectwise-ruby-sdk/models/portal_security.rb +208 -0
  640. data/lib/connectwise-ruby-sdk/models/pricing_break.rb +288 -0
  641. data/lib/connectwise-ruby-sdk/models/pricing_detail.rb +255 -0
  642. data/lib/connectwise-ruby-sdk/models/pricing_schedule.rb +281 -0
  643. data/lib/connectwise-ruby-sdk/models/priority.rb +286 -0
  644. data/lib/connectwise-ruby-sdk/models/priority_reference.rb +227 -0
  645. data/lib/connectwise-ruby-sdk/models/product_category_reference.rb +218 -0
  646. data/lib/connectwise-ruby-sdk/models/product_component.rb +319 -0
  647. data/lib/connectwise-ruby-sdk/models/product_item.rb +725 -0
  648. data/lib/connectwise-ruby-sdk/models/product_item_reference.rb +218 -0
  649. data/lib/connectwise-ruby-sdk/models/product_picking_shipping_detail.rb +314 -0
  650. data/lib/connectwise-ruby-sdk/models/product_recurring.rb +293 -0
  651. data/lib/connectwise-ruby-sdk/models/product_reference.rb +218 -0
  652. data/lib/connectwise-ruby-sdk/models/product_sub_category_reference.rb +218 -0
  653. data/lib/connectwise-ruby-sdk/models/product_type.rb +285 -0
  654. data/lib/connectwise-ruby-sdk/models/product_type_reference.rb +218 -0
  655. data/lib/connectwise-ruby-sdk/models/project.rb +821 -0
  656. data/lib/connectwise-ruby-sdk/models/project_board_reference.rb +218 -0
  657. data/lib/connectwise-ruby-sdk/models/project_contact.rb +228 -0
  658. data/lib/connectwise-ruby-sdk/models/project_note.rb +246 -0
  659. data/lib/connectwise-ruby-sdk/models/project_phase.rb +534 -0
  660. data/lib/connectwise-ruby-sdk/models/project_phase_reference.rb +218 -0
  661. data/lib/connectwise-ruby-sdk/models/project_reference.rb +218 -0
  662. data/lib/connectwise-ruby-sdk/models/project_role_reference.rb +218 -0
  663. data/lib/connectwise-ruby-sdk/models/project_status_reference.rb +218 -0
  664. data/lib/connectwise-ruby-sdk/models/project_team_member.rb +274 -0
  665. data/lib/connectwise-ruby-sdk/models/project_type_reference.rb +218 -0
  666. data/lib/connectwise-ruby-sdk/models/purchase_order.rb +698 -0
  667. data/lib/connectwise-ruby-sdk/models/purchase_order_line_item.rb +553 -0
  668. data/lib/connectwise-ruby-sdk/models/purchase_order_reference.rb +218 -0
  669. data/lib/connectwise-ruby-sdk/models/purchase_order_status_reference.rb +218 -0
  670. data/lib/connectwise-ruby-sdk/models/relationship_reference.rb +218 -0
  671. data/lib/connectwise-ruby-sdk/models/reminder_reference.rb +218 -0
  672. data/lib/connectwise-ruby-sdk/models/report.rb +199 -0
  673. data/lib/connectwise-ruby-sdk/models/report_data_response.rb +212 -0
  674. data/lib/connectwise-ruby-sdk/models/request_password_request.rb +199 -0
  675. data/lib/connectwise-ruby-sdk/models/sales_team_reference.rb +218 -0
  676. data/lib/connectwise-ruby-sdk/models/schedule_entry.rb +387 -0
  677. data/lib/connectwise-ruby-sdk/models/schedule_entry_reference.rb +218 -0
  678. data/lib/connectwise-ruby-sdk/models/schedule_span_reference.rb +218 -0
  679. data/lib/connectwise-ruby-sdk/models/schedule_status.rb +252 -0
  680. data/lib/connectwise-ruby-sdk/models/schedule_status_reference.rb +218 -0
  681. data/lib/connectwise-ruby-sdk/models/schedule_type.rb +286 -0
  682. data/lib/connectwise-ruby-sdk/models/schedule_type_reference.rb +218 -0
  683. data/lib/connectwise-ruby-sdk/models/security_role_reference.rb +218 -0
  684. data/lib/connectwise-ruby-sdk/models/service_code_reference.rb +218 -0
  685. data/lib/connectwise-ruby-sdk/models/service_item_reference.rb +218 -0
  686. data/lib/connectwise-ruby-sdk/models/service_location_reference.rb +218 -0
  687. data/lib/connectwise-ruby-sdk/models/service_note.rb +326 -0
  688. data/lib/connectwise-ruby-sdk/models/service_signoff_reference.rb +218 -0
  689. data/lib/connectwise-ruby-sdk/models/service_source_reference.rb +218 -0
  690. data/lib/connectwise-ruby-sdk/models/service_status_reference.rb +218 -0
  691. data/lib/connectwise-ruby-sdk/models/service_sub_type_reference.rb +218 -0
  692. data/lib/connectwise-ruby-sdk/models/service_team_reference.rb +218 -0
  693. data/lib/connectwise-ruby-sdk/models/service_type_reference.rb +218 -0
  694. data/lib/connectwise-ruby-sdk/models/shipment_method.rb +294 -0
  695. data/lib/connectwise-ruby-sdk/models/shipment_method_reference.rb +218 -0
  696. data/lib/connectwise-ruby-sdk/models/sic_code_reference.rb +218 -0
  697. data/lib/connectwise-ruby-sdk/models/site_reference.rb +218 -0
  698. data/lib/connectwise-ruby-sdk/models/sla_reference.rb +218 -0
  699. data/lib/connectwise-ruby-sdk/models/source.rb +261 -0
  700. data/lib/connectwise-ruby-sdk/models/status.rb +339 -0
  701. data/lib/connectwise-ruby-sdk/models/sub_category.rb +243 -0
  702. data/lib/connectwise-ruby-sdk/models/sub_type.rb +281 -0
  703. data/lib/connectwise-ruby-sdk/models/success_response.rb +208 -0
  704. data/lib/connectwise-ruby-sdk/models/survey.rb +369 -0
  705. data/lib/connectwise-ruby-sdk/models/survey_question.rb +333 -0
  706. data/lib/connectwise-ruby-sdk/models/survey_question_option.rb +233 -0
  707. data/lib/connectwise-ruby-sdk/models/survey_result.rb +293 -0
  708. data/lib/connectwise-ruby-sdk/models/survey_result_detail.rb +210 -0
  709. data/lib/connectwise-ruby-sdk/models/task.rb +343 -0
  710. data/lib/connectwise-ruby-sdk/models/tax_code_reference.rb +218 -0
  711. data/lib/connectwise-ruby-sdk/models/team.rb +397 -0
  712. data/lib/connectwise-ruby-sdk/models/team_role_reference.rb +218 -0
  713. data/lib/connectwise-ruby-sdk/models/ticket.rb +1336 -0
  714. data/lib/connectwise-ruby-sdk/models/ticket_reference.rb +218 -0
  715. data/lib/connectwise-ruby-sdk/models/time_entry.rb +502 -0
  716. data/lib/connectwise-ruby-sdk/models/time_entry_reference.rb +209 -0
  717. data/lib/connectwise-ruby-sdk/models/time_zone_reference.rb +218 -0
  718. data/lib/connectwise-ruby-sdk/models/token.rb +217 -0
  719. data/lib/connectwise-ruby-sdk/models/track.rb +291 -0
  720. data/lib/connectwise-ruby-sdk/models/track_reference.rb +218 -0
  721. data/lib/connectwise-ruby-sdk/models/transaction.rb +782 -0
  722. data/lib/connectwise-ruby-sdk/models/type.rb +330 -0
  723. data/lib/connectwise-ruby-sdk/models/type_associations.rb +210 -0
  724. data/lib/connectwise-ruby-sdk/models/unit_of_measure.rb +276 -0
  725. data/lib/connectwise-ruby-sdk/models/unit_of_measure_reference.rb +218 -0
  726. data/lib/connectwise-ruby-sdk/models/unposted_expense.rb +656 -0
  727. data/lib/connectwise-ruby-sdk/models/unposted_invoice.rb +617 -0
  728. data/lib/connectwise-ruby-sdk/models/unposted_procurement.rb +599 -0
  729. data/lib/connectwise-ruby-sdk/models/user_defined_field.rb +538 -0
  730. data/lib/connectwise-ruby-sdk/models/user_defined_field_option.rb +251 -0
  731. data/lib/connectwise-ruby-sdk/models/validate_portal_request.rb +208 -0
  732. data/lib/connectwise-ruby-sdk/models/validate_portal_response.rb +208 -0
  733. data/lib/connectwise-ruby-sdk/models/validation_error.rb +226 -0
  734. data/lib/connectwise-ruby-sdk/models/warehouse_bin_reference.rb +218 -0
  735. data/lib/connectwise-ruby-sdk/models/warehouse_reference.rb +218 -0
  736. data/lib/connectwise-ruby-sdk/models/work_role_reference.rb +218 -0
  737. data/lib/connectwise-ruby-sdk/models/work_type_reference.rb +218 -0
  738. data/lib/connectwise-ruby-sdk/version.rb +26 -0
  739. data/spec/api/accounting_batch_transactions_api_spec.rb +88 -0
  740. data/spec/api/accounting_batches_api_spec.rb +109 -0
  741. data/spec/api/accounting_unposted_expenses_api_spec.rb +85 -0
  742. data/spec/api/accounting_unposted_procurements_api_spec.rb +85 -0
  743. data/spec/api/accounting_unpostedinvoices_api_spec.rb +85 -0
  744. data/spec/api/activities_api_spec.rb +135 -0
  745. data/spec/api/activity_statuses_api_spec.rb +135 -0
  746. data/spec/api/activity_types_api_spec.rb +135 -0
  747. data/spec/api/agreement_additions_api_spec.rb +142 -0
  748. data/spec/api/agreement_adjustments_api_spec.rb +142 -0
  749. data/spec/api/agreement_board_defaults_api_spec.rb +142 -0
  750. data/spec/api/agreement_sites_api_spec.rb +142 -0
  751. data/spec/api/agreement_types_api_spec.rb +135 -0
  752. data/spec/api/agreement_work_role_exclusions_api_spec.rb +101 -0
  753. data/spec/api/agreement_work_roles_api_spec.rb +142 -0
  754. data/spec/api/agreement_work_type_exclusions_api_spec.rb +101 -0
  755. data/spec/api/agreement_work_types_api_spec.rb +142 -0
  756. data/spec/api/agreements_api_spec.rb +200 -0
  757. data/spec/api/audit_trail_api_spec.rb +88 -0
  758. data/spec/api/board_excluded_members_api_spec.rb +114 -0
  759. data/spec/api/board_items_api_spec.rb +142 -0
  760. data/spec/api/board_statuses_api_spec.rb +142 -0
  761. data/spec/api/board_sub_types_api_spec.rb +142 -0
  762. data/spec/api/board_teams_api_spec.rb +142 -0
  763. data/spec/api/board_types_api_spec.rb +155 -0
  764. data/spec/api/boards_api_spec.rb +135 -0
  765. data/spec/api/callback_entries_api_spec.rb +135 -0
  766. data/spec/api/campaign_audits_api_spec.rb +142 -0
  767. data/spec/api/campaign_emails_opened_api_spec.rb +142 -0
  768. data/spec/api/campaign_forms_submitted_api_spec.rb +142 -0
  769. data/spec/api/campaign_links_clicked_api_spec.rb +142 -0
  770. data/spec/api/campaign_statuses_api_spec.rb +135 -0
  771. data/spec/api/campaign_sub_types_api_spec.rb +142 -0
  772. data/spec/api/campaign_types_api_spec.rb +135 -0
  773. data/spec/api/campaigns_api_spec.rb +187 -0
  774. data/spec/api/catalog_components_api_spec.rb +142 -0
  775. data/spec/api/catalogs_item_api_spec.rb +148 -0
  776. data/spec/api/categories_api_spec.rb +135 -0
  777. data/spec/api/codes_api_spec.rb +135 -0
  778. data/spec/api/companies_api_spec.rb +148 -0
  779. data/spec/api/company_management_summary_reports_api_spec.rb +142 -0
  780. data/spec/api/company_notes_api_spec.rb +142 -0
  781. data/spec/api/company_sites_api_spec.rb +142 -0
  782. data/spec/api/company_statuses_api_spec.rb +135 -0
  783. data/spec/api/company_teams_api_spec.rb +142 -0
  784. data/spec/api/company_types_api_spec.rb +135 -0
  785. data/spec/api/configuration_statuses_api_spec.rb +135 -0
  786. data/spec/api/configuration_type_questions_api_spec.rb +142 -0
  787. data/spec/api/configuration_types_api_spec.rb +135 -0
  788. data/spec/api/configurations_api_spec.rb +158 -0
  789. data/spec/api/connect_wise_hosted_setups_api_spec.rb +135 -0
  790. data/spec/api/contact_communications_api_spec.rb +142 -0
  791. data/spec/api/contact_departments_api_spec.rb +135 -0
  792. data/spec/api/contact_notes_api_spec.rb +142 -0
  793. data/spec/api/contact_relationships_api_spec.rb +135 -0
  794. data/spec/api/contact_tracks_api_spec.rb +114 -0
  795. data/spec/api/contact_types_api_spec.rb +135 -0
  796. data/spec/api/contacts_api_spec.rb +186 -0
  797. data/spec/api/currencies_api_spec.rb +135 -0
  798. data/spec/api/documents_api_spec.rb +159 -0
  799. data/spec/api/expense_entries_api_spec.rb +135 -0
  800. data/spec/api/expense_types_api_spec.rb +135 -0
  801. data/spec/api/group_companies_api_spec.rb +142 -0
  802. data/spec/api/group_contacts_api_spec.rb +142 -0
  803. data/spec/api/groups_api_spec.rb +135 -0
  804. data/spec/api/info_api_spec.rb +57 -0
  805. data/spec/api/invoice_payments_api_spec.rb +129 -0
  806. data/spec/api/invoices_api_spec.rb +147 -0
  807. data/spec/api/knowledge_base_articles_api_spec.rb +135 -0
  808. data/spec/api/links_api_spec.rb +135 -0
  809. data/spec/api/locations_api_spec.rb +135 -0
  810. data/spec/api/manufacturers_api_spec.rb +135 -0
  811. data/spec/api/members_api_spec.rb +111 -0
  812. data/spec/api/menu_entries_api_spec.rb +161 -0
  813. data/spec/api/opportunities_api_spec.rb +187 -0
  814. data/spec/api/opportunity_contacts_api_spec.rb +142 -0
  815. data/spec/api/opportunity_forecasts_api_spec.rb +142 -0
  816. data/spec/api/opportunity_notes_api_spec.rb +142 -0
  817. data/spec/api/opportunity_ratings_api_spec.rb +135 -0
  818. data/spec/api/opportunity_statuses_api_spec.rb +135 -0
  819. data/spec/api/opportunity_teams_api_spec.rb +142 -0
  820. data/spec/api/opportunity_types_api_spec.rb +135 -0
  821. data/spec/api/order_statuses_api_spec.rb +135 -0
  822. data/spec/api/orders_api_spec.rb +135 -0
  823. data/spec/api/pricing_breaks_api_spec.rb +149 -0
  824. data/spec/api/pricing_details_api_spec.rb +142 -0
  825. data/spec/api/pricing_schedules_api_spec.rb +135 -0
  826. data/spec/api/priorities_api_spec.rb +149 -0
  827. data/spec/api/product_components_api_spec.rb +142 -0
  828. data/spec/api/product_picking_shipping_details_api_spec.rb +142 -0
  829. data/spec/api/product_types_api_spec.rb +135 -0
  830. data/spec/api/products_item_api_spec.rb +135 -0
  831. data/spec/api/project_contacts_api_spec.rb +101 -0
  832. data/spec/api/project_notes_api_spec.rb +142 -0
  833. data/spec/api/project_phases_api_spec.rb +142 -0
  834. data/spec/api/projects_api_spec.rb +135 -0
  835. data/spec/api/projects_team_members_api_spec.rb +142 -0
  836. data/spec/api/purchase_order_line_items_api_spec.rb +142 -0
  837. data/spec/api/purchase_orders_api_spec.rb +135 -0
  838. data/spec/api/reports_api_spec.rb +101 -0
  839. data/spec/api/schedule_entries_api_spec.rb +135 -0
  840. data/spec/api/schedule_statuses_api_spec.rb +135 -0
  841. data/spec/api/schedule_types_api_spec.rb +135 -0
  842. data/spec/api/shipment_methods_api_spec.rb +135 -0
  843. data/spec/api/sources_api_spec.rb +135 -0
  844. data/spec/api/sub_categories_api_spec.rb +142 -0
  845. data/spec/api/survey_questions_api_spec.rb +142 -0
  846. data/spec/api/survey_results_api_spec.rb +142 -0
  847. data/spec/api/surveys_api_spec.rb +135 -0
  848. data/spec/api/ticket_notes_api_spec.rb +142 -0
  849. data/spec/api/ticket_tasks_api_spec.rb +142 -0
  850. data/spec/api/tickets_api_spec.rb +344 -0
  851. data/spec/api/time_entries_api_spec.rb +135 -0
  852. data/spec/api/unit_of_measure_conversions_api_spec.rb +142 -0
  853. data/spec/api/units_of_measure_api_spec.rb +135 -0
  854. data/spec/api/user_defined_fields_api_spec.rb +135 -0
  855. data/spec/api_client_spec.rb +236 -0
  856. data/spec/configuration_spec.rb +52 -0
  857. data/spec/models/activity_reference_spec.rb +65 -0
  858. data/spec/models/activity_spec.rb +185 -0
  859. data/spec/models/activity_status_reference_spec.rb +65 -0
  860. data/spec/models/activity_status_spec.rb +89 -0
  861. data/spec/models/activity_type_reference_spec.rb +65 -0
  862. data/spec/models/activity_type_spec.rb +95 -0
  863. data/spec/models/addition_spec.rb +189 -0
  864. data/spec/models/adjustment_spec.rb +83 -0
  865. data/spec/models/agreement_reference_spec.rb +65 -0
  866. data/spec/models/agreement_site_spec.rb +77 -0
  867. data/spec/models/agreement_spec.rb +497 -0
  868. data/spec/models/agreement_type_reference_spec.rb +65 -0
  869. data/spec/models/agreement_type_spec.rb +407 -0
  870. data/spec/models/agreement_work_role_exclusion_spec.rb +71 -0
  871. data/spec/models/agreement_work_role_spec.rb +111 -0
  872. data/spec/models/agreement_work_type_exclusion_spec.rb +71 -0
  873. data/spec/models/agreement_work_type_spec.rb +167 -0
  874. data/spec/models/audit_trail_entry_insert_request_spec.rb +59 -0
  875. data/spec/models/audit_trail_entry_spec.rb +77 -0
  876. data/spec/models/audit_trail_objects_spec.rb +63 -0
  877. data/spec/models/batch_reference_spec.rb +65 -0
  878. data/spec/models/batch_spec.rb +149 -0
  879. data/spec/models/billing_status_reference_spec.rb +65 -0
  880. data/spec/models/billing_terms_reference_spec.rb +65 -0
  881. data/spec/models/board_default_spec.rb +83 -0
  882. data/spec/models/board_reference_spec.rb +65 -0
  883. data/spec/models/board_spec.rb +131 -0
  884. data/spec/models/calendar_reference_spec.rb +65 -0
  885. data/spec/models/callback_entry_spec.rb +95 -0
  886. data/spec/models/campaign_audit_spec.rb +101 -0
  887. data/spec/models/campaign_reference_spec.rb +65 -0
  888. data/spec/models/campaign_spec.rb +203 -0
  889. data/spec/models/campaign_status_reference_spec.rb +65 -0
  890. data/spec/models/campaign_status_spec.rb +77 -0
  891. data/spec/models/campaign_sub_type_reference_spec.rb +65 -0
  892. data/spec/models/campaign_sub_type_spec.rb +71 -0
  893. data/spec/models/campaign_type_reference_spec.rb +65 -0
  894. data/spec/models/campaign_type_spec.rb +71 -0
  895. data/spec/models/catalog_component_spec.rb +119 -0
  896. data/spec/models/catalog_item_reference_spec.rb +65 -0
  897. data/spec/models/catalog_item_spec.rb +211 -0
  898. data/spec/models/category_spec.rb +101 -0
  899. data/spec/models/charge_code_reference_spec.rb +65 -0
  900. data/spec/models/classification_reference_spec.rb +65 -0
  901. data/spec/models/code_spec.rb +89 -0
  902. data/spec/models/communication_type_reference_spec.rb +65 -0
  903. data/spec/models/company_management_summary_spec.rb +261 -0
  904. data/spec/models/company_merge_spec.rb +463 -0
  905. data/spec/models/company_note_spec.rb +89 -0
  906. data/spec/models/company_reference_spec.rb +71 -0
  907. data/spec/models/company_site_spec.rb +167 -0
  908. data/spec/models/company_spec.rb +323 -0
  909. data/spec/models/company_status_reference_spec.rb +65 -0
  910. data/spec/models/company_status_spec.rb +113 -0
  911. data/spec/models/company_team_spec.rb +113 -0
  912. data/spec/models/company_type_reference_spec.rb +65 -0
  913. data/spec/models/company_type_spec.rb +77 -0
  914. data/spec/models/configuration_question_spec.rb +99 -0
  915. data/spec/models/configuration_reference_spec.rb +65 -0
  916. data/spec/models/configuration_spec.rb +347 -0
  917. data/spec/models/configuration_status_reference_spec.rb +65 -0
  918. data/spec/models/configuration_status_spec.rb +77 -0
  919. data/spec/models/configuration_type_question_spec.rb +121 -0
  920. data/spec/models/configuration_type_reference_spec.rb +65 -0
  921. data/spec/models/configuration_type_spec.rb +77 -0
  922. data/spec/models/connect_wise_hosted_setup_spec.rb +117 -0
  923. data/spec/models/contact_communication_item_spec.rb +87 -0
  924. data/spec/models/contact_communication_spec.rb +105 -0
  925. data/spec/models/contact_department_reference_spec.rb +65 -0
  926. data/spec/models/contact_department_spec.rb +65 -0
  927. data/spec/models/contact_note_spec.rb +89 -0
  928. data/spec/models/contact_reference_spec.rb +65 -0
  929. data/spec/models/contact_relationship_spec.rb +65 -0
  930. data/spec/models/contact_spec.rb +295 -0
  931. data/spec/models/contact_type_reference_spec.rb +65 -0
  932. data/spec/models/contact_type_spec.rb +71 -0
  933. data/spec/models/conversion_spec.rb +77 -0
  934. data/spec/models/count_spec.rb +53 -0
  935. data/spec/models/country_reference_spec.rb +65 -0
  936. data/spec/models/currency_reference_spec.rb +65 -0
  937. data/spec/models/currency_spec.rb +95 -0
  938. data/spec/models/custom_field_value_spec.rb +91 -0
  939. data/spec/models/document_info_spec.rb +107 -0
  940. data/spec/models/document_reference_spec.rb +59 -0
  941. data/spec/models/email_opened_spec.rb +71 -0
  942. data/spec/models/entity_type_reference_spec.rb +65 -0
  943. data/spec/models/error_spec.rb +65 -0
  944. data/spec/models/excluded_member_spec.rb +71 -0
  945. data/spec/models/expense_entry_spec.rb +163 -0
  946. data/spec/models/expense_tax_spec.rb +65 -0
  947. data/spec/models/expense_tax_type_reference_spec.rb +65 -0
  948. data/spec/models/expense_type_reference_spec.rb +65 -0
  949. data/spec/models/expense_type_spec.rb +133 -0
  950. data/spec/models/filter_values_spec.rb +59 -0
  951. data/spec/models/forecast_spec.rb +123 -0
  952. data/spec/models/form_submitted_spec.rb +113 -0
  953. data/spec/models/generic_id_identifier_reference_spec.rb +59 -0
  954. data/spec/models/group_reference_spec.rb +65 -0
  955. data/spec/models/group_spec.rb +83 -0
  956. data/spec/models/guid_spec.rb +47 -0
  957. data/spec/models/info_spec.rb +65 -0
  958. data/spec/models/integrator_login_spec.rb +395 -0
  959. data/spec/models/invoice_reference_spec.rb +65 -0
  960. data/spec/models/invoice_spec.rb +337 -0
  961. data/spec/models/item_spec.rb +101 -0
  962. data/spec/models/iv_item_reference_spec.rb +65 -0
  963. data/spec/models/j_object_spec.rb +47 -0
  964. data/spec/models/knowledge_base_article_spec.rb +119 -0
  965. data/spec/models/link_clicked_spec.rb +83 -0
  966. data/spec/models/link_spec.rb +77 -0
  967. data/spec/models/location_spec.rb +81 -0
  968. data/spec/models/management_solution_reference_spec.rb +65 -0
  969. data/spec/models/manufacturer_reference_spec.rb +65 -0
  970. data/spec/models/manufacturer_spec.rb +71 -0
  971. data/spec/models/marketing_company_spec.rb +83 -0
  972. data/spec/models/marketing_contact_spec.rb +77 -0
  973. data/spec/models/member_reference_spec.rb +71 -0
  974. data/spec/models/member_spec.rb +573 -0
  975. data/spec/models/member_type_reference_spec.rb +65 -0
  976. data/spec/models/menu_entry_spec.rb +107 -0
  977. data/spec/models/menu_location_reference_spec.rb +65 -0
  978. data/spec/models/metadata_spec.rb +47 -0
  979. data/spec/models/note_type_reference_spec.rb +65 -0
  980. data/spec/models/opportunity_contact_spec.rb +107 -0
  981. data/spec/models/opportunity_note_spec.rb +95 -0
  982. data/spec/models/opportunity_priority_reference_spec.rb +65 -0
  983. data/spec/models/opportunity_probability_reference_spec.rb +65 -0
  984. data/spec/models/opportunity_rating_reference_spec.rb +65 -0
  985. data/spec/models/opportunity_rating_spec.rb +71 -0
  986. data/spec/models/opportunity_reference_spec.rb +65 -0
  987. data/spec/models/opportunity_sales_role_reference_spec.rb +65 -0
  988. data/spec/models/opportunity_spec.rb +245 -0
  989. data/spec/models/opportunity_stage_reference_spec.rb +65 -0
  990. data/spec/models/opportunity_status_reference_spec.rb +65 -0
  991. data/spec/models/opportunity_status_spec.rb +107 -0
  992. data/spec/models/opportunity_to_agreement_conversion_spec.rb +137 -0
  993. data/spec/models/opportunity_to_project_conversion_spec.rb +137 -0
  994. data/spec/models/opportunity_to_sales_order_conversion_spec.rb +95 -0
  995. data/spec/models/opportunity_to_service_ticket_conversion_spec.rb +95 -0
  996. data/spec/models/opportunity_type_reference_spec.rb +65 -0
  997. data/spec/models/opportunity_type_spec.rb +71 -0
  998. data/spec/models/order_spec.rb +269 -0
  999. data/spec/models/order_status_reference_spec.rb +65 -0
  1000. data/spec/models/order_status_spec.rb +89 -0
  1001. data/spec/models/ownership_type_reference_spec.rb +65 -0
  1002. data/spec/models/patch_operation_spec.rb +65 -0
  1003. data/spec/models/payment_method_reference_spec.rb +65 -0
  1004. data/spec/models/payment_spec.rb +89 -0
  1005. data/spec/models/phase_status_reference_spec.rb +65 -0
  1006. data/spec/models/portal_security_spec.rb +59 -0
  1007. data/spec/models/pricing_break_spec.rb +93 -0
  1008. data/spec/models/pricing_detail_spec.rb +89 -0
  1009. data/spec/models/pricing_schedule_spec.rb +95 -0
  1010. data/spec/models/priority_reference_spec.rb +71 -0
  1011. data/spec/models/priority_spec.rb +89 -0
  1012. data/spec/models/product_category_reference_spec.rb +65 -0
  1013. data/spec/models/product_component_spec.rb +131 -0
  1014. data/spec/models/product_item_reference_spec.rb +65 -0
  1015. data/spec/models/product_item_spec.rb +323 -0
  1016. data/spec/models/product_picking_shipping_detail_spec.rb +125 -0
  1017. data/spec/models/product_recurring_spec.rb +93 -0
  1018. data/spec/models/product_reference_spec.rb +65 -0
  1019. data/spec/models/product_sub_category_reference_spec.rb +65 -0
  1020. data/spec/models/product_type_reference_spec.rb +65 -0
  1021. data/spec/models/product_type_spec.rb +81 -0
  1022. data/spec/models/project_board_reference_spec.rb +65 -0
  1023. data/spec/models/project_contact_spec.rb +71 -0
  1024. data/spec/models/project_note_spec.rb +83 -0
  1025. data/spec/models/project_phase_reference_spec.rb +65 -0
  1026. data/spec/models/project_phase_spec.rb +225 -0
  1027. data/spec/models/project_reference_spec.rb +65 -0
  1028. data/spec/models/project_role_reference_spec.rb +65 -0
  1029. data/spec/models/project_spec.rb +395 -0
  1030. data/spec/models/project_status_reference_spec.rb +65 -0
  1031. data/spec/models/project_team_member_spec.rb +101 -0
  1032. data/spec/models/project_type_reference_spec.rb +65 -0
  1033. data/spec/models/purchase_order_line_item_spec.rb +215 -0
  1034. data/spec/models/purchase_order_reference_spec.rb +65 -0
  1035. data/spec/models/purchase_order_spec.rb +341 -0
  1036. data/spec/models/purchase_order_status_reference_spec.rb +65 -0
  1037. data/spec/models/relationship_reference_spec.rb +65 -0
  1038. data/spec/models/reminder_reference_spec.rb +65 -0
  1039. data/spec/models/report_data_response_spec.rb +59 -0
  1040. data/spec/models/report_spec.rb +53 -0
  1041. data/spec/models/request_password_request_spec.rb +53 -0
  1042. data/spec/models/sales_team_reference_spec.rb +65 -0
  1043. data/spec/models/schedule_entry_reference_spec.rb +65 -0
  1044. data/spec/models/schedule_entry_spec.rb +167 -0
  1045. data/spec/models/schedule_span_reference_spec.rb +65 -0
  1046. data/spec/models/schedule_status_reference_spec.rb +65 -0
  1047. data/spec/models/schedule_status_spec.rb +77 -0
  1048. data/spec/models/schedule_type_reference_spec.rb +65 -0
  1049. data/spec/models/schedule_type_spec.rb +89 -0
  1050. data/spec/models/security_role_reference_spec.rb +65 -0
  1051. data/spec/models/service_code_reference_spec.rb +65 -0
  1052. data/spec/models/service_item_reference_spec.rb +65 -0
  1053. data/spec/models/service_location_reference_spec.rb +65 -0
  1054. data/spec/models/service_note_spec.rb +137 -0
  1055. data/spec/models/service_signoff_reference_spec.rb +65 -0
  1056. data/spec/models/service_source_reference_spec.rb +65 -0
  1057. data/spec/models/service_status_reference_spec.rb +65 -0
  1058. data/spec/models/service_sub_type_reference_spec.rb +65 -0
  1059. data/spec/models/service_team_reference_spec.rb +65 -0
  1060. data/spec/models/service_type_reference_spec.rb +65 -0
  1061. data/spec/models/shipment_method_reference_spec.rb +65 -0
  1062. data/spec/models/shipment_method_spec.rb +87 -0
  1063. data/spec/models/sic_code_reference_spec.rb +65 -0
  1064. data/spec/models/site_reference_spec.rb +65 -0
  1065. data/spec/models/sla_reference_spec.rb +65 -0
  1066. data/spec/models/source_spec.rb +83 -0
  1067. data/spec/models/status_spec.rb +117 -0
  1068. data/spec/models/sub_category_spec.rb +71 -0
  1069. data/spec/models/sub_type_spec.rb +95 -0
  1070. data/spec/models/success_response_spec.rb +59 -0
  1071. data/spec/models/survey_question_option_spec.rb +65 -0
  1072. data/spec/models/survey_question_spec.rb +111 -0
  1073. data/spec/models/survey_result_detail_spec.rb +59 -0
  1074. data/spec/models/survey_result_spec.rb +113 -0
  1075. data/spec/models/survey_spec.rb +125 -0
  1076. data/spec/models/task_spec.rb +117 -0
  1077. data/spec/models/tax_code_reference_spec.rb +65 -0
  1078. data/spec/models/team_role_reference_spec.rb +65 -0
  1079. data/spec/models/team_spec.rb +153 -0
  1080. data/spec/models/ticket_reference_spec.rb +65 -0
  1081. data/spec/models/ticket_spec.rb +617 -0
  1082. data/spec/models/time_entry_reference_spec.rb +59 -0
  1083. data/spec/models/time_entry_spec.rb +229 -0
  1084. data/spec/models/time_zone_reference_spec.rb +65 -0
  1085. data/spec/models/token_spec.rb +65 -0
  1086. data/spec/models/track_reference_spec.rb +65 -0
  1087. data/spec/models/track_spec.rb +113 -0
  1088. data/spec/models/transaction_spec.rb +415 -0
  1089. data/spec/models/type_associations_spec.rb +59 -0
  1090. data/spec/models/type_spec.rb +111 -0
  1091. data/spec/models/unit_of_measure_reference_spec.rb +65 -0
  1092. data/spec/models/unit_of_measure_spec.rb +83 -0
  1093. data/spec/models/unposted_expense_spec.rb +331 -0
  1094. data/spec/models/unposted_invoice_spec.rb +309 -0
  1095. data/spec/models/unposted_procurement_spec.rb +297 -0
  1096. data/spec/models/user_defined_field_option_spec.rb +77 -0
  1097. data/spec/models/user_defined_field_spec.rb +187 -0
  1098. data/spec/models/validate_portal_request_spec.rb +59 -0
  1099. data/spec/models/validate_portal_response_spec.rb +59 -0
  1100. data/spec/models/validation_error_spec.rb +71 -0
  1101. data/spec/models/warehouse_bin_reference_spec.rb +65 -0
  1102. data/spec/models/warehouse_reference_spec.rb +65 -0
  1103. data/spec/models/work_role_reference_spec.rb +65 -0
  1104. data/spec/models/work_type_reference_spec.rb +65 -0
  1105. data/spec/spec_helper.rb +121 -0
  1106. metadata +1695 -0
@@ -0,0 +1,260 @@
1
+ =begin
2
+ #Connectwise REST API
3
+
4
+ #ConnectWise API
5
+
6
+ OpenAPI spec version: 1.0.0
7
+ Contact: platform@connectwise.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+
10
+ Licensed under the Apache License, Version 2.0 (the "License");
11
+ you may not use this file except in compliance with the License.
12
+ You may obtain a copy of the License at
13
+
14
+ http://www.apache.org/licenses/LICENSE-2.0
15
+
16
+ Unless required by applicable law or agreed to in writing, software
17
+ distributed under the License is distributed on an "AS IS" BASIS,
18
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19
+ See the License for the specific language governing permissions and
20
+ limitations under the License.
21
+
22
+ =end
23
+
24
+ require 'date'
25
+
26
+ module Connectwise
27
+
28
+ class Adjustment
29
+ attr_accessor :id
30
+
31
+ attr_accessor :amount
32
+
33
+ attr_accessor :description
34
+
35
+ attr_accessor :effective_date
36
+
37
+ attr_accessor :agreement_id
38
+
39
+ # Metadata of the entity
40
+ attr_accessor :_info
41
+
42
+
43
+ # Attribute mapping from ruby-style variable name to JSON key.
44
+ def self.attribute_map
45
+ {
46
+ :'id' => :'id',
47
+ :'amount' => :'amount',
48
+ :'description' => :'description',
49
+ :'effective_date' => :'effectiveDate',
50
+ :'agreement_id' => :'agreementId',
51
+ :'_info' => :'_info'
52
+ }
53
+ end
54
+
55
+ # Attribute type mapping.
56
+ def self.swagger_types
57
+ {
58
+ :'id' => :'Integer',
59
+ :'amount' => :'Float',
60
+ :'description' => :'String',
61
+ :'effective_date' => :'DateTime',
62
+ :'agreement_id' => :'Integer',
63
+ :'_info' => :'Metadata'
64
+ }
65
+ end
66
+
67
+ # Initializes the object
68
+ # @param [Hash] attributes Model attributes in the form of hash
69
+ def initialize(attributes = {})
70
+ return unless attributes.is_a?(Hash)
71
+
72
+ # convert string to symbol for hash key
73
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
74
+
75
+ if attributes.has_key?(:'id')
76
+ self.id = attributes[:'id']
77
+ end
78
+
79
+ if attributes.has_key?(:'amount')
80
+ self.amount = attributes[:'amount']
81
+ end
82
+
83
+ if attributes.has_key?(:'description')
84
+ self.description = attributes[:'description']
85
+ end
86
+
87
+ if attributes.has_key?(:'effectiveDate')
88
+ self.effective_date = attributes[:'effectiveDate']
89
+ end
90
+
91
+ if attributes.has_key?(:'agreementId')
92
+ self.agreement_id = attributes[:'agreementId']
93
+ end
94
+
95
+ if attributes.has_key?(:'_info')
96
+ self._info = attributes[:'_info']
97
+ end
98
+
99
+ end
100
+
101
+ # Show invalid properties with the reasons. Usually used together with valid?
102
+ # @return Array for valid properies with the reasons
103
+ def list_invalid_properties
104
+ invalid_properties = Array.new
105
+ return invalid_properties
106
+ end
107
+
108
+ # Check to see if the all the properties in the model are valid
109
+ # @return true if the model is valid
110
+ def valid?
111
+ return false if @description.to_s.length < 1000
112
+ return true
113
+ end
114
+
115
+ # Custom attribute writer method with validation
116
+ # @param [Object] description Value to be assigned
117
+ def description=(description)
118
+ if description.nil?
119
+ fail ArgumentError, "description cannot be nil"
120
+ end
121
+
122
+ if description.to_s.length < 1000
123
+ fail ArgumentError, "invalid value for 'description', the character length must be great than or equal to ."
124
+ end
125
+
126
+ @description = description
127
+ end
128
+
129
+ # Checks equality by comparing each attribute.
130
+ # @param [Object] Object to be compared
131
+ def ==(o)
132
+ return true if self.equal?(o)
133
+ self.class == o.class &&
134
+ id == o.id &&
135
+ amount == o.amount &&
136
+ description == o.description &&
137
+ effective_date == o.effective_date &&
138
+ agreement_id == o.agreement_id &&
139
+ _info == o._info
140
+ end
141
+
142
+ # @see the `==` method
143
+ # @param [Object] Object to be compared
144
+ def eql?(o)
145
+ self == o
146
+ end
147
+
148
+ # Calculates hash code according to all attributes.
149
+ # @return [Fixnum] Hash code
150
+ def hash
151
+ [id, amount, description, effective_date, agreement_id, _info].hash
152
+ end
153
+
154
+ # Builds the object from hash
155
+ # @param [Hash] attributes Model attributes in the form of hash
156
+ # @return [Object] Returns the model itself
157
+ def build_from_hash(attributes)
158
+ return nil unless attributes.is_a?(Hash)
159
+ self.class.swagger_types.each_pair do |key, type|
160
+ if type =~ /^Array<(.*)>/i
161
+ # check to ensure the input is an array given that the the attribute
162
+ # is documented as an array but the input is not
163
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
164
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
165
+ end
166
+ elsif !attributes[self.class.attribute_map[key]].nil?
167
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
168
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
169
+ end
170
+
171
+ self
172
+ end
173
+
174
+ # Deserializes the data based on type
175
+ # @param string type Data type
176
+ # @param string value Value to be deserialized
177
+ # @return [Object] Deserialized data
178
+ def _deserialize(type, value)
179
+ case type.to_sym
180
+ when :DateTime
181
+ DateTime.parse(value)
182
+ when :Date
183
+ Date.parse(value)
184
+ when :String
185
+ value.to_s
186
+ when :Integer
187
+ value.to_i
188
+ when :Float
189
+ value.to_f
190
+ when :BOOLEAN
191
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
192
+ true
193
+ else
194
+ false
195
+ end
196
+ when :Object
197
+ # generic object (usually a Hash), return directly
198
+ value
199
+ when /\AArray<(?<inner_type>.+)>\z/
200
+ inner_type = Regexp.last_match[:inner_type]
201
+ value.map { |v| _deserialize(inner_type, v) }
202
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
203
+ k_type = Regexp.last_match[:k_type]
204
+ v_type = Regexp.last_match[:v_type]
205
+ {}.tap do |hash|
206
+ value.each do |k, v|
207
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
208
+ end
209
+ end
210
+ else # model
211
+ temp_model = Connectwise.const_get(type).new
212
+ temp_model.build_from_hash(value)
213
+ end
214
+ end
215
+
216
+ # Returns the string representation of the object
217
+ # @return [String] String presentation of the object
218
+ def to_s
219
+ to_hash.to_s
220
+ end
221
+
222
+ # to_body is an alias to to_hash (backward compatibility)
223
+ # @return [Hash] Returns the object in the form of hash
224
+ def to_body
225
+ to_hash
226
+ end
227
+
228
+ # Returns the object in the form of hash
229
+ # @return [Hash] Returns the object in the form of hash
230
+ def to_hash
231
+ hash = {}
232
+ self.class.attribute_map.each_pair do |attr, param|
233
+ value = self.send(attr)
234
+ next if value.nil?
235
+ hash[param] = _to_hash(value)
236
+ end
237
+ hash
238
+ end
239
+
240
+ # Outputs non-array value in the form of hash
241
+ # For object, use to_hash. Otherwise, just return the value
242
+ # @param [Object] value Any valid value
243
+ # @return [Hash] Returns the value in the form of hash
244
+ def _to_hash(value)
245
+ if value.is_a?(Array)
246
+ value.compact.map{ |v| _to_hash(v) }
247
+ elsif value.is_a?(Hash)
248
+ {}.tap do |hash|
249
+ value.each { |k, v| hash[k] = _to_hash(v) }
250
+ end
251
+ elsif value.respond_to? :to_hash
252
+ value.to_hash
253
+ else
254
+ value
255
+ end
256
+ end
257
+
258
+ end
259
+
260
+ end
@@ -0,0 +1,1020 @@
1
+ =begin
2
+ #Connectwise REST API
3
+
4
+ #ConnectWise API
5
+
6
+ OpenAPI spec version: 1.0.0
7
+ Contact: platform@connectwise.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+
10
+ Licensed under the Apache License, Version 2.0 (the "License");
11
+ you may not use this file except in compliance with the License.
12
+ You may obtain a copy of the License at
13
+
14
+ http://www.apache.org/licenses/LICENSE-2.0
15
+
16
+ Unless required by applicable law or agreed to in writing, software
17
+ distributed under the License is distributed on an "AS IS" BASIS,
18
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19
+ See the License for the specific language governing permissions and
20
+ limitations under the License.
21
+
22
+ =end
23
+
24
+ require 'date'
25
+
26
+ module Connectwise
27
+
28
+ class Agreement
29
+ attr_accessor :id
30
+
31
+ attr_accessor :name
32
+
33
+ attr_accessor :type
34
+
35
+ attr_accessor :company
36
+
37
+ attr_accessor :contact
38
+
39
+ attr_accessor :sub_contract_company
40
+
41
+ attr_accessor :sub_contract_contact
42
+
43
+ attr_accessor :parent_agreement_id
44
+
45
+ attr_accessor :customer_po
46
+
47
+ attr_accessor :location_id
48
+
49
+ attr_accessor :business_unit_id
50
+
51
+ attr_accessor :restrict_location_flag
52
+
53
+ attr_accessor :restrict_department_flag
54
+
55
+ attr_accessor :start_date
56
+
57
+ attr_accessor :end_date
58
+
59
+ attr_accessor :no_ending_date_flag
60
+
61
+ attr_accessor :opportunity
62
+
63
+ attr_accessor :cancelled_flag
64
+
65
+ attr_accessor :date_cancelled
66
+
67
+ attr_accessor :reason_cancelled
68
+
69
+ attr_accessor :sla_id
70
+
71
+ attr_accessor :work_order
72
+
73
+ attr_accessor :internal_notes
74
+
75
+ attr_accessor :application_units
76
+
77
+ attr_accessor :application_limit
78
+
79
+ attr_accessor :application_cycle
80
+
81
+ attr_accessor :application_unlimited_flag
82
+
83
+ attr_accessor :one_time_flag
84
+
85
+ attr_accessor :cover_agreement_time
86
+
87
+ attr_accessor :cover_agreement_product
88
+
89
+ attr_accessor :cover_agreement_expense
90
+
91
+ attr_accessor :cover_sales_tax
92
+
93
+ attr_accessor :carry_over_unused
94
+
95
+ attr_accessor :allow_overruns
96
+
97
+ attr_accessor :expired_days
98
+
99
+ attr_accessor :limit
100
+
101
+ attr_accessor :expire_when_zero
102
+
103
+ attr_accessor :charge_to_firm
104
+
105
+ attr_accessor :employee_comp_rate
106
+
107
+ attr_accessor :employee_comp_not_exceed
108
+
109
+ attr_accessor :comp_hourly_rate
110
+
111
+ attr_accessor :comp_limit_amount
112
+
113
+ attr_accessor :bill_cycle_id
114
+
115
+ attr_accessor :bill_one_time_flag
116
+
117
+ attr_accessor :bill_terms_id
118
+
119
+ attr_accessor :invoicing_cycle
120
+
121
+ attr_accessor :bill_to_company
122
+
123
+ attr_accessor :bill_to_site
124
+
125
+ attr_accessor :bill_amount
126
+
127
+ attr_accessor :taxable
128
+
129
+ attr_accessor :prorate_first_bill
130
+
131
+ attr_accessor :bill_start_date
132
+
133
+ attr_accessor :tax_code_id
134
+
135
+ attr_accessor :restrict_down_payment
136
+
137
+ attr_accessor :invoice_description
138
+
139
+ attr_accessor :top_comment
140
+
141
+ attr_accessor :bottom_comment
142
+
143
+ attr_accessor :work_role
144
+
145
+ attr_accessor :work_type
146
+
147
+ attr_accessor :project_type_id
148
+
149
+ attr_accessor :invoice_template_setup_id
150
+
151
+ attr_accessor :bill_time
152
+
153
+ attr_accessor :bill_expenses
154
+
155
+ attr_accessor :bill_products
156
+
157
+ attr_accessor :billable_time_invoice
158
+
159
+ attr_accessor :billable_expense_invoice
160
+
161
+ attr_accessor :billable_product_invoice
162
+
163
+ # Metadata of the entity
164
+ attr_accessor :_info
165
+
166
+ attr_accessor :period_type
167
+
168
+ class EnumAttributeValidator
169
+ attr_reader :datatype
170
+ attr_reader :allowable_values
171
+
172
+ def initialize(datatype, allowable_values)
173
+ @allowable_values = allowable_values.map do |value|
174
+ case datatype.to_s
175
+ when /Integer/i
176
+ value.to_i
177
+ when /Float/i
178
+ value.to_f
179
+ else
180
+ value
181
+ end
182
+ end
183
+ end
184
+
185
+ def valid?(value)
186
+ !value || allowable_values.include?(value)
187
+ end
188
+ end
189
+
190
+ # Attribute mapping from ruby-style variable name to JSON key.
191
+ def self.attribute_map
192
+ {
193
+ :'id' => :'id',
194
+ :'name' => :'name',
195
+ :'type' => :'type',
196
+ :'company' => :'company',
197
+ :'contact' => :'contact',
198
+ :'sub_contract_company' => :'subContractCompany',
199
+ :'sub_contract_contact' => :'subContractContact',
200
+ :'parent_agreement_id' => :'parentAgreementId',
201
+ :'customer_po' => :'customerPO',
202
+ :'location_id' => :'locationId',
203
+ :'business_unit_id' => :'businessUnitId',
204
+ :'restrict_location_flag' => :'restrictLocationFlag',
205
+ :'restrict_department_flag' => :'restrictDepartmentFlag',
206
+ :'start_date' => :'startDate',
207
+ :'end_date' => :'endDate',
208
+ :'no_ending_date_flag' => :'noEndingDateFlag',
209
+ :'opportunity' => :'opportunity',
210
+ :'cancelled_flag' => :'cancelledFlag',
211
+ :'date_cancelled' => :'dateCancelled',
212
+ :'reason_cancelled' => :'reasonCancelled',
213
+ :'sla_id' => :'slaId',
214
+ :'work_order' => :'workOrder',
215
+ :'internal_notes' => :'internalNotes',
216
+ :'application_units' => :'applicationUnits',
217
+ :'application_limit' => :'applicationLimit',
218
+ :'application_cycle' => :'applicationCycle',
219
+ :'application_unlimited_flag' => :'applicationUnlimitedFlag',
220
+ :'one_time_flag' => :'oneTimeFlag',
221
+ :'cover_agreement_time' => :'coverAgreementTime',
222
+ :'cover_agreement_product' => :'coverAgreementProduct',
223
+ :'cover_agreement_expense' => :'coverAgreementExpense',
224
+ :'cover_sales_tax' => :'coverSalesTax',
225
+ :'carry_over_unused' => :'carryOverUnused',
226
+ :'allow_overruns' => :'allowOverruns',
227
+ :'expired_days' => :'expiredDays',
228
+ :'limit' => :'limit',
229
+ :'expire_when_zero' => :'expireWhenZero',
230
+ :'charge_to_firm' => :'chargeToFirm',
231
+ :'employee_comp_rate' => :'employeeCompRate',
232
+ :'employee_comp_not_exceed' => :'employeeCompNotExceed',
233
+ :'comp_hourly_rate' => :'compHourlyRate',
234
+ :'comp_limit_amount' => :'compLimitAmount',
235
+ :'bill_cycle_id' => :'billCycleId',
236
+ :'bill_one_time_flag' => :'billOneTimeFlag',
237
+ :'bill_terms_id' => :'billTermsId',
238
+ :'invoicing_cycle' => :'invoicingCycle',
239
+ :'bill_to_company' => :'billToCompany',
240
+ :'bill_to_site' => :'billToSite',
241
+ :'bill_amount' => :'billAmount',
242
+ :'taxable' => :'taxable',
243
+ :'prorate_first_bill' => :'prorateFirstBill',
244
+ :'bill_start_date' => :'billStartDate',
245
+ :'tax_code_id' => :'taxCodeId',
246
+ :'restrict_down_payment' => :'restrictDownPayment',
247
+ :'invoice_description' => :'invoiceDescription',
248
+ :'top_comment' => :'topComment',
249
+ :'bottom_comment' => :'bottomComment',
250
+ :'work_role' => :'workRole',
251
+ :'work_type' => :'workType',
252
+ :'project_type_id' => :'projectTypeId',
253
+ :'invoice_template_setup_id' => :'invoiceTemplateSetupId',
254
+ :'bill_time' => :'billTime',
255
+ :'bill_expenses' => :'billExpenses',
256
+ :'bill_products' => :'billProducts',
257
+ :'billable_time_invoice' => :'billableTimeInvoice',
258
+ :'billable_expense_invoice' => :'billableExpenseInvoice',
259
+ :'billable_product_invoice' => :'billableProductInvoice',
260
+ :'_info' => :'_info',
261
+ :'period_type' => :'periodType'
262
+ }
263
+ end
264
+
265
+ # Attribute type mapping.
266
+ def self.swagger_types
267
+ {
268
+ :'id' => :'Integer',
269
+ :'name' => :'String',
270
+ :'type' => :'AgreementTypeReference',
271
+ :'company' => :'CompanyReference',
272
+ :'contact' => :'ContactReference',
273
+ :'sub_contract_company' => :'CompanyReference',
274
+ :'sub_contract_contact' => :'ContactReference',
275
+ :'parent_agreement_id' => :'Integer',
276
+ :'customer_po' => :'String',
277
+ :'location_id' => :'Integer',
278
+ :'business_unit_id' => :'Integer',
279
+ :'restrict_location_flag' => :'BOOLEAN',
280
+ :'restrict_department_flag' => :'BOOLEAN',
281
+ :'start_date' => :'DateTime',
282
+ :'end_date' => :'DateTime',
283
+ :'no_ending_date_flag' => :'BOOLEAN',
284
+ :'opportunity' => :'OpportunityReference',
285
+ :'cancelled_flag' => :'BOOLEAN',
286
+ :'date_cancelled' => :'DateTime',
287
+ :'reason_cancelled' => :'String',
288
+ :'sla_id' => :'Integer',
289
+ :'work_order' => :'String',
290
+ :'internal_notes' => :'String',
291
+ :'application_units' => :'String',
292
+ :'application_limit' => :'Float',
293
+ :'application_cycle' => :'String',
294
+ :'application_unlimited_flag' => :'BOOLEAN',
295
+ :'one_time_flag' => :'BOOLEAN',
296
+ :'cover_agreement_time' => :'BOOLEAN',
297
+ :'cover_agreement_product' => :'BOOLEAN',
298
+ :'cover_agreement_expense' => :'BOOLEAN',
299
+ :'cover_sales_tax' => :'BOOLEAN',
300
+ :'carry_over_unused' => :'BOOLEAN',
301
+ :'allow_overruns' => :'BOOLEAN',
302
+ :'expired_days' => :'Integer',
303
+ :'limit' => :'Integer',
304
+ :'expire_when_zero' => :'BOOLEAN',
305
+ :'charge_to_firm' => :'BOOLEAN',
306
+ :'employee_comp_rate' => :'String',
307
+ :'employee_comp_not_exceed' => :'String',
308
+ :'comp_hourly_rate' => :'Float',
309
+ :'comp_limit_amount' => :'Float',
310
+ :'bill_cycle_id' => :'Integer',
311
+ :'bill_one_time_flag' => :'BOOLEAN',
312
+ :'bill_terms_id' => :'Integer',
313
+ :'invoicing_cycle' => :'String',
314
+ :'bill_to_company' => :'CompanyReference',
315
+ :'bill_to_site' => :'SiteReference',
316
+ :'bill_amount' => :'Float',
317
+ :'taxable' => :'BOOLEAN',
318
+ :'prorate_first_bill' => :'Float',
319
+ :'bill_start_date' => :'DateTime',
320
+ :'tax_code_id' => :'Integer',
321
+ :'restrict_down_payment' => :'BOOLEAN',
322
+ :'invoice_description' => :'String',
323
+ :'top_comment' => :'BOOLEAN',
324
+ :'bottom_comment' => :'BOOLEAN',
325
+ :'work_role' => :'WorkRoleReference',
326
+ :'work_type' => :'WorkTypeReference',
327
+ :'project_type_id' => :'Integer',
328
+ :'invoice_template_setup_id' => :'Integer',
329
+ :'bill_time' => :'String',
330
+ :'bill_expenses' => :'String',
331
+ :'bill_products' => :'String',
332
+ :'billable_time_invoice' => :'BOOLEAN',
333
+ :'billable_expense_invoice' => :'BOOLEAN',
334
+ :'billable_product_invoice' => :'BOOLEAN',
335
+ :'_info' => :'Metadata',
336
+ :'period_type' => :'String'
337
+ }
338
+ end
339
+
340
+ # Initializes the object
341
+ # @param [Hash] attributes Model attributes in the form of hash
342
+ def initialize(attributes = {})
343
+ return unless attributes.is_a?(Hash)
344
+
345
+ # convert string to symbol for hash key
346
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
347
+
348
+ if attributes.has_key?(:'id')
349
+ self.id = attributes[:'id']
350
+ end
351
+
352
+ if attributes.has_key?(:'name')
353
+ self.name = attributes[:'name']
354
+ end
355
+
356
+ if attributes.has_key?(:'type')
357
+ self.type = attributes[:'type']
358
+ end
359
+
360
+ if attributes.has_key?(:'company')
361
+ self.company = attributes[:'company']
362
+ end
363
+
364
+ if attributes.has_key?(:'contact')
365
+ self.contact = attributes[:'contact']
366
+ end
367
+
368
+ if attributes.has_key?(:'subContractCompany')
369
+ self.sub_contract_company = attributes[:'subContractCompany']
370
+ end
371
+
372
+ if attributes.has_key?(:'subContractContact')
373
+ self.sub_contract_contact = attributes[:'subContractContact']
374
+ end
375
+
376
+ if attributes.has_key?(:'parentAgreementId')
377
+ self.parent_agreement_id = attributes[:'parentAgreementId']
378
+ end
379
+
380
+ if attributes.has_key?(:'customerPO')
381
+ self.customer_po = attributes[:'customerPO']
382
+ end
383
+
384
+ if attributes.has_key?(:'locationId')
385
+ self.location_id = attributes[:'locationId']
386
+ end
387
+
388
+ if attributes.has_key?(:'businessUnitId')
389
+ self.business_unit_id = attributes[:'businessUnitId']
390
+ end
391
+
392
+ if attributes.has_key?(:'restrictLocationFlag')
393
+ self.restrict_location_flag = attributes[:'restrictLocationFlag']
394
+ end
395
+
396
+ if attributes.has_key?(:'restrictDepartmentFlag')
397
+ self.restrict_department_flag = attributes[:'restrictDepartmentFlag']
398
+ end
399
+
400
+ if attributes.has_key?(:'startDate')
401
+ self.start_date = attributes[:'startDate']
402
+ end
403
+
404
+ if attributes.has_key?(:'endDate')
405
+ self.end_date = attributes[:'endDate']
406
+ end
407
+
408
+ if attributes.has_key?(:'noEndingDateFlag')
409
+ self.no_ending_date_flag = attributes[:'noEndingDateFlag']
410
+ end
411
+
412
+ if attributes.has_key?(:'opportunity')
413
+ self.opportunity = attributes[:'opportunity']
414
+ end
415
+
416
+ if attributes.has_key?(:'cancelledFlag')
417
+ self.cancelled_flag = attributes[:'cancelledFlag']
418
+ end
419
+
420
+ if attributes.has_key?(:'dateCancelled')
421
+ self.date_cancelled = attributes[:'dateCancelled']
422
+ end
423
+
424
+ if attributes.has_key?(:'reasonCancelled')
425
+ self.reason_cancelled = attributes[:'reasonCancelled']
426
+ end
427
+
428
+ if attributes.has_key?(:'slaId')
429
+ self.sla_id = attributes[:'slaId']
430
+ end
431
+
432
+ if attributes.has_key?(:'workOrder')
433
+ self.work_order = attributes[:'workOrder']
434
+ end
435
+
436
+ if attributes.has_key?(:'internalNotes')
437
+ self.internal_notes = attributes[:'internalNotes']
438
+ end
439
+
440
+ if attributes.has_key?(:'applicationUnits')
441
+ self.application_units = attributes[:'applicationUnits']
442
+ end
443
+
444
+ if attributes.has_key?(:'applicationLimit')
445
+ self.application_limit = attributes[:'applicationLimit']
446
+ end
447
+
448
+ if attributes.has_key?(:'applicationCycle')
449
+ self.application_cycle = attributes[:'applicationCycle']
450
+ end
451
+
452
+ if attributes.has_key?(:'applicationUnlimitedFlag')
453
+ self.application_unlimited_flag = attributes[:'applicationUnlimitedFlag']
454
+ end
455
+
456
+ if attributes.has_key?(:'oneTimeFlag')
457
+ self.one_time_flag = attributes[:'oneTimeFlag']
458
+ end
459
+
460
+ if attributes.has_key?(:'coverAgreementTime')
461
+ self.cover_agreement_time = attributes[:'coverAgreementTime']
462
+ end
463
+
464
+ if attributes.has_key?(:'coverAgreementProduct')
465
+ self.cover_agreement_product = attributes[:'coverAgreementProduct']
466
+ end
467
+
468
+ if attributes.has_key?(:'coverAgreementExpense')
469
+ self.cover_agreement_expense = attributes[:'coverAgreementExpense']
470
+ end
471
+
472
+ if attributes.has_key?(:'coverSalesTax')
473
+ self.cover_sales_tax = attributes[:'coverSalesTax']
474
+ end
475
+
476
+ if attributes.has_key?(:'carryOverUnused')
477
+ self.carry_over_unused = attributes[:'carryOverUnused']
478
+ end
479
+
480
+ if attributes.has_key?(:'allowOverruns')
481
+ self.allow_overruns = attributes[:'allowOverruns']
482
+ end
483
+
484
+ if attributes.has_key?(:'expiredDays')
485
+ self.expired_days = attributes[:'expiredDays']
486
+ end
487
+
488
+ if attributes.has_key?(:'limit')
489
+ self.limit = attributes[:'limit']
490
+ end
491
+
492
+ if attributes.has_key?(:'expireWhenZero')
493
+ self.expire_when_zero = attributes[:'expireWhenZero']
494
+ end
495
+
496
+ if attributes.has_key?(:'chargeToFirm')
497
+ self.charge_to_firm = attributes[:'chargeToFirm']
498
+ end
499
+
500
+ if attributes.has_key?(:'employeeCompRate')
501
+ self.employee_comp_rate = attributes[:'employeeCompRate']
502
+ end
503
+
504
+ if attributes.has_key?(:'employeeCompNotExceed')
505
+ self.employee_comp_not_exceed = attributes[:'employeeCompNotExceed']
506
+ end
507
+
508
+ if attributes.has_key?(:'compHourlyRate')
509
+ self.comp_hourly_rate = attributes[:'compHourlyRate']
510
+ end
511
+
512
+ if attributes.has_key?(:'compLimitAmount')
513
+ self.comp_limit_amount = attributes[:'compLimitAmount']
514
+ end
515
+
516
+ if attributes.has_key?(:'billCycleId')
517
+ self.bill_cycle_id = attributes[:'billCycleId']
518
+ end
519
+
520
+ if attributes.has_key?(:'billOneTimeFlag')
521
+ self.bill_one_time_flag = attributes[:'billOneTimeFlag']
522
+ end
523
+
524
+ if attributes.has_key?(:'billTermsId')
525
+ self.bill_terms_id = attributes[:'billTermsId']
526
+ end
527
+
528
+ if attributes.has_key?(:'invoicingCycle')
529
+ self.invoicing_cycle = attributes[:'invoicingCycle']
530
+ end
531
+
532
+ if attributes.has_key?(:'billToCompany')
533
+ self.bill_to_company = attributes[:'billToCompany']
534
+ end
535
+
536
+ if attributes.has_key?(:'billToSite')
537
+ self.bill_to_site = attributes[:'billToSite']
538
+ end
539
+
540
+ if attributes.has_key?(:'billAmount')
541
+ self.bill_amount = attributes[:'billAmount']
542
+ end
543
+
544
+ if attributes.has_key?(:'taxable')
545
+ self.taxable = attributes[:'taxable']
546
+ end
547
+
548
+ if attributes.has_key?(:'prorateFirstBill')
549
+ self.prorate_first_bill = attributes[:'prorateFirstBill']
550
+ end
551
+
552
+ if attributes.has_key?(:'billStartDate')
553
+ self.bill_start_date = attributes[:'billStartDate']
554
+ end
555
+
556
+ if attributes.has_key?(:'taxCodeId')
557
+ self.tax_code_id = attributes[:'taxCodeId']
558
+ end
559
+
560
+ if attributes.has_key?(:'restrictDownPayment')
561
+ self.restrict_down_payment = attributes[:'restrictDownPayment']
562
+ end
563
+
564
+ if attributes.has_key?(:'invoiceDescription')
565
+ self.invoice_description = attributes[:'invoiceDescription']
566
+ end
567
+
568
+ if attributes.has_key?(:'topComment')
569
+ self.top_comment = attributes[:'topComment']
570
+ end
571
+
572
+ if attributes.has_key?(:'bottomComment')
573
+ self.bottom_comment = attributes[:'bottomComment']
574
+ end
575
+
576
+ if attributes.has_key?(:'workRole')
577
+ self.work_role = attributes[:'workRole']
578
+ end
579
+
580
+ if attributes.has_key?(:'workType')
581
+ self.work_type = attributes[:'workType']
582
+ end
583
+
584
+ if attributes.has_key?(:'projectTypeId')
585
+ self.project_type_id = attributes[:'projectTypeId']
586
+ end
587
+
588
+ if attributes.has_key?(:'invoiceTemplateSetupId')
589
+ self.invoice_template_setup_id = attributes[:'invoiceTemplateSetupId']
590
+ end
591
+
592
+ if attributes.has_key?(:'billTime')
593
+ self.bill_time = attributes[:'billTime']
594
+ end
595
+
596
+ if attributes.has_key?(:'billExpenses')
597
+ self.bill_expenses = attributes[:'billExpenses']
598
+ end
599
+
600
+ if attributes.has_key?(:'billProducts')
601
+ self.bill_products = attributes[:'billProducts']
602
+ end
603
+
604
+ if attributes.has_key?(:'billableTimeInvoice')
605
+ self.billable_time_invoice = attributes[:'billableTimeInvoice']
606
+ end
607
+
608
+ if attributes.has_key?(:'billableExpenseInvoice')
609
+ self.billable_expense_invoice = attributes[:'billableExpenseInvoice']
610
+ end
611
+
612
+ if attributes.has_key?(:'billableProductInvoice')
613
+ self.billable_product_invoice = attributes[:'billableProductInvoice']
614
+ end
615
+
616
+ if attributes.has_key?(:'_info')
617
+ self._info = attributes[:'_info']
618
+ end
619
+
620
+ if attributes.has_key?(:'periodType')
621
+ self.period_type = attributes[:'periodType']
622
+ end
623
+
624
+ end
625
+
626
+ # Show invalid properties with the reasons. Usually used together with valid?
627
+ # @return Array for valid properies with the reasons
628
+ def list_invalid_properties
629
+ invalid_properties = Array.new
630
+ return invalid_properties
631
+ end
632
+
633
+ # Check to see if the all the properties in the model are valid
634
+ # @return true if the model is valid
635
+ def valid?
636
+ return false if @name.nil?
637
+ return false if @name.to_s.length < 100
638
+ return false if @type.nil?
639
+ return false if @company.nil?
640
+ return false if @contact.nil?
641
+ return false if @customer_po.to_s.length < 50
642
+ return false if @reason_cancelled.to_s.length < 50
643
+ return false if @work_order.to_s.length < 20
644
+ return false if @internal_notes.to_s.length < 5000
645
+ application_units_validator = EnumAttributeValidator.new('String', ["Amount", "Hours", "Incidents"])
646
+ return false unless application_units_validator.valid?(@application_units)
647
+ application_cycle_validator = EnumAttributeValidator.new('String', ["Contract2Weeks", "Contract4Weeks", "ContractYear", "CalendarMonth", "CalendarQuarter", "CalendarWeek", "ContractQuarter", "CalendarYear"])
648
+ return false unless application_cycle_validator.valid?(@application_cycle)
649
+ employee_comp_rate_validator = EnumAttributeValidator.new('String', ["Actual", "Hourly"])
650
+ return false unless employee_comp_rate_validator.valid?(@employee_comp_rate)
651
+ employee_comp_not_exceed_validator = EnumAttributeValidator.new('String', ["Billing", "Percent", "Amount"])
652
+ return false unless employee_comp_not_exceed_validator.valid?(@employee_comp_not_exceed)
653
+ invoicing_cycle_validator = EnumAttributeValidator.new('String', ["CalendarYear", "ContractYear"])
654
+ return false unless invoicing_cycle_validator.valid?(@invoicing_cycle)
655
+ bill_time_validator = EnumAttributeValidator.new('String', ["Billable", "DoNotBill", "NoCharge", "NoDefault"])
656
+ return false unless bill_time_validator.valid?(@bill_time)
657
+ bill_expenses_validator = EnumAttributeValidator.new('String', ["Billable", "DoNotBill", "NoCharge", "NoDefault"])
658
+ return false unless bill_expenses_validator.valid?(@bill_expenses)
659
+ bill_products_validator = EnumAttributeValidator.new('String', ["Billable", "DoNotBill", "NoCharge", "NoDefault"])
660
+ return false unless bill_products_validator.valid?(@bill_products)
661
+ period_type_validator = EnumAttributeValidator.new('String', ["Current", "Future", "Both", "Undefined"])
662
+ return false unless period_type_validator.valid?(@period_type)
663
+ return true
664
+ end
665
+
666
+ # Custom attribute writer method with validation
667
+ # @param [Object] name Value to be assigned
668
+ def name=(name)
669
+ if name.nil?
670
+ fail ArgumentError, "name cannot be nil"
671
+ end
672
+
673
+ if name.to_s.length < 100
674
+ fail ArgumentError, "invalid value for 'name', the character length must be great than or equal to ."
675
+ end
676
+
677
+ @name = name
678
+ end
679
+
680
+ # Custom attribute writer method with validation
681
+ # @param [Object] customer_po Value to be assigned
682
+ def customer_po=(customer_po)
683
+ if customer_po.nil?
684
+ fail ArgumentError, "customer_po cannot be nil"
685
+ end
686
+
687
+ if customer_po.to_s.length < 50
688
+ fail ArgumentError, "invalid value for 'customer_po', the character length must be great than or equal to ."
689
+ end
690
+
691
+ @customer_po = customer_po
692
+ end
693
+
694
+ # Custom attribute writer method with validation
695
+ # @param [Object] reason_cancelled Value to be assigned
696
+ def reason_cancelled=(reason_cancelled)
697
+ if reason_cancelled.nil?
698
+ fail ArgumentError, "reason_cancelled cannot be nil"
699
+ end
700
+
701
+ if reason_cancelled.to_s.length < 50
702
+ fail ArgumentError, "invalid value for 'reason_cancelled', the character length must be great than or equal to ."
703
+ end
704
+
705
+ @reason_cancelled = reason_cancelled
706
+ end
707
+
708
+ # Custom attribute writer method with validation
709
+ # @param [Object] work_order Value to be assigned
710
+ def work_order=(work_order)
711
+ if work_order.nil?
712
+ fail ArgumentError, "work_order cannot be nil"
713
+ end
714
+
715
+ if work_order.to_s.length < 20
716
+ fail ArgumentError, "invalid value for 'work_order', the character length must be great than or equal to ."
717
+ end
718
+
719
+ @work_order = work_order
720
+ end
721
+
722
+ # Custom attribute writer method with validation
723
+ # @param [Object] internal_notes Value to be assigned
724
+ def internal_notes=(internal_notes)
725
+ if internal_notes.nil?
726
+ fail ArgumentError, "internal_notes cannot be nil"
727
+ end
728
+
729
+ if internal_notes.to_s.length < 5000
730
+ fail ArgumentError, "invalid value for 'internal_notes', the character length must be great than or equal to ."
731
+ end
732
+
733
+ @internal_notes = internal_notes
734
+ end
735
+
736
+ # Custom attribute writer method checking allowed values (enum).
737
+ # @param [Object] application_units Object to be assigned
738
+ def application_units=(application_units)
739
+ validator = EnumAttributeValidator.new('String', ["Amount", "Hours", "Incidents"])
740
+ unless validator.valid?(application_units)
741
+ fail ArgumentError, "invalid value for 'application_units', must be one of #{validator.allowable_values}."
742
+ end
743
+ @application_units = application_units
744
+ end
745
+
746
+ # Custom attribute writer method checking allowed values (enum).
747
+ # @param [Object] application_cycle Object to be assigned
748
+ def application_cycle=(application_cycle)
749
+ validator = EnumAttributeValidator.new('String', ["Contract2Weeks", "Contract4Weeks", "ContractYear", "CalendarMonth", "CalendarQuarter", "CalendarWeek", "ContractQuarter", "CalendarYear"])
750
+ unless validator.valid?(application_cycle)
751
+ fail ArgumentError, "invalid value for 'application_cycle', must be one of #{validator.allowable_values}."
752
+ end
753
+ @application_cycle = application_cycle
754
+ end
755
+
756
+ # Custom attribute writer method checking allowed values (enum).
757
+ # @param [Object] employee_comp_rate Object to be assigned
758
+ def employee_comp_rate=(employee_comp_rate)
759
+ validator = EnumAttributeValidator.new('String', ["Actual", "Hourly"])
760
+ unless validator.valid?(employee_comp_rate)
761
+ fail ArgumentError, "invalid value for 'employee_comp_rate', must be one of #{validator.allowable_values}."
762
+ end
763
+ @employee_comp_rate = employee_comp_rate
764
+ end
765
+
766
+ # Custom attribute writer method checking allowed values (enum).
767
+ # @param [Object] employee_comp_not_exceed Object to be assigned
768
+ def employee_comp_not_exceed=(employee_comp_not_exceed)
769
+ validator = EnumAttributeValidator.new('String', ["Billing", "Percent", "Amount"])
770
+ unless validator.valid?(employee_comp_not_exceed)
771
+ fail ArgumentError, "invalid value for 'employee_comp_not_exceed', must be one of #{validator.allowable_values}."
772
+ end
773
+ @employee_comp_not_exceed = employee_comp_not_exceed
774
+ end
775
+
776
+ # Custom attribute writer method checking allowed values (enum).
777
+ # @param [Object] invoicing_cycle Object to be assigned
778
+ def invoicing_cycle=(invoicing_cycle)
779
+ validator = EnumAttributeValidator.new('String', ["CalendarYear", "ContractYear"])
780
+ unless validator.valid?(invoicing_cycle)
781
+ fail ArgumentError, "invalid value for 'invoicing_cycle', must be one of #{validator.allowable_values}."
782
+ end
783
+ @invoicing_cycle = invoicing_cycle
784
+ end
785
+
786
+ # Custom attribute writer method checking allowed values (enum).
787
+ # @param [Object] bill_time Object to be assigned
788
+ def bill_time=(bill_time)
789
+ validator = EnumAttributeValidator.new('String', ["Billable", "DoNotBill", "NoCharge", "NoDefault"])
790
+ unless validator.valid?(bill_time)
791
+ fail ArgumentError, "invalid value for 'bill_time', must be one of #{validator.allowable_values}."
792
+ end
793
+ @bill_time = bill_time
794
+ end
795
+
796
+ # Custom attribute writer method checking allowed values (enum).
797
+ # @param [Object] bill_expenses Object to be assigned
798
+ def bill_expenses=(bill_expenses)
799
+ validator = EnumAttributeValidator.new('String', ["Billable", "DoNotBill", "NoCharge", "NoDefault"])
800
+ unless validator.valid?(bill_expenses)
801
+ fail ArgumentError, "invalid value for 'bill_expenses', must be one of #{validator.allowable_values}."
802
+ end
803
+ @bill_expenses = bill_expenses
804
+ end
805
+
806
+ # Custom attribute writer method checking allowed values (enum).
807
+ # @param [Object] bill_products Object to be assigned
808
+ def bill_products=(bill_products)
809
+ validator = EnumAttributeValidator.new('String', ["Billable", "DoNotBill", "NoCharge", "NoDefault"])
810
+ unless validator.valid?(bill_products)
811
+ fail ArgumentError, "invalid value for 'bill_products', must be one of #{validator.allowable_values}."
812
+ end
813
+ @bill_products = bill_products
814
+ end
815
+
816
+ # Custom attribute writer method checking allowed values (enum).
817
+ # @param [Object] period_type Object to be assigned
818
+ def period_type=(period_type)
819
+ validator = EnumAttributeValidator.new('String', ["Current", "Future", "Both", "Undefined"])
820
+ unless validator.valid?(period_type)
821
+ fail ArgumentError, "invalid value for 'period_type', must be one of #{validator.allowable_values}."
822
+ end
823
+ @period_type = period_type
824
+ end
825
+
826
+ # Checks equality by comparing each attribute.
827
+ # @param [Object] Object to be compared
828
+ def ==(o)
829
+ return true if self.equal?(o)
830
+ self.class == o.class &&
831
+ id == o.id &&
832
+ name == o.name &&
833
+ type == o.type &&
834
+ company == o.company &&
835
+ contact == o.contact &&
836
+ sub_contract_company == o.sub_contract_company &&
837
+ sub_contract_contact == o.sub_contract_contact &&
838
+ parent_agreement_id == o.parent_agreement_id &&
839
+ customer_po == o.customer_po &&
840
+ location_id == o.location_id &&
841
+ business_unit_id == o.business_unit_id &&
842
+ restrict_location_flag == o.restrict_location_flag &&
843
+ restrict_department_flag == o.restrict_department_flag &&
844
+ start_date == o.start_date &&
845
+ end_date == o.end_date &&
846
+ no_ending_date_flag == o.no_ending_date_flag &&
847
+ opportunity == o.opportunity &&
848
+ cancelled_flag == o.cancelled_flag &&
849
+ date_cancelled == o.date_cancelled &&
850
+ reason_cancelled == o.reason_cancelled &&
851
+ sla_id == o.sla_id &&
852
+ work_order == o.work_order &&
853
+ internal_notes == o.internal_notes &&
854
+ application_units == o.application_units &&
855
+ application_limit == o.application_limit &&
856
+ application_cycle == o.application_cycle &&
857
+ application_unlimited_flag == o.application_unlimited_flag &&
858
+ one_time_flag == o.one_time_flag &&
859
+ cover_agreement_time == o.cover_agreement_time &&
860
+ cover_agreement_product == o.cover_agreement_product &&
861
+ cover_agreement_expense == o.cover_agreement_expense &&
862
+ cover_sales_tax == o.cover_sales_tax &&
863
+ carry_over_unused == o.carry_over_unused &&
864
+ allow_overruns == o.allow_overruns &&
865
+ expired_days == o.expired_days &&
866
+ limit == o.limit &&
867
+ expire_when_zero == o.expire_when_zero &&
868
+ charge_to_firm == o.charge_to_firm &&
869
+ employee_comp_rate == o.employee_comp_rate &&
870
+ employee_comp_not_exceed == o.employee_comp_not_exceed &&
871
+ comp_hourly_rate == o.comp_hourly_rate &&
872
+ comp_limit_amount == o.comp_limit_amount &&
873
+ bill_cycle_id == o.bill_cycle_id &&
874
+ bill_one_time_flag == o.bill_one_time_flag &&
875
+ bill_terms_id == o.bill_terms_id &&
876
+ invoicing_cycle == o.invoicing_cycle &&
877
+ bill_to_company == o.bill_to_company &&
878
+ bill_to_site == o.bill_to_site &&
879
+ bill_amount == o.bill_amount &&
880
+ taxable == o.taxable &&
881
+ prorate_first_bill == o.prorate_first_bill &&
882
+ bill_start_date == o.bill_start_date &&
883
+ tax_code_id == o.tax_code_id &&
884
+ restrict_down_payment == o.restrict_down_payment &&
885
+ invoice_description == o.invoice_description &&
886
+ top_comment == o.top_comment &&
887
+ bottom_comment == o.bottom_comment &&
888
+ work_role == o.work_role &&
889
+ work_type == o.work_type &&
890
+ project_type_id == o.project_type_id &&
891
+ invoice_template_setup_id == o.invoice_template_setup_id &&
892
+ bill_time == o.bill_time &&
893
+ bill_expenses == o.bill_expenses &&
894
+ bill_products == o.bill_products &&
895
+ billable_time_invoice == o.billable_time_invoice &&
896
+ billable_expense_invoice == o.billable_expense_invoice &&
897
+ billable_product_invoice == o.billable_product_invoice &&
898
+ _info == o._info &&
899
+ period_type == o.period_type
900
+ end
901
+
902
+ # @see the `==` method
903
+ # @param [Object] Object to be compared
904
+ def eql?(o)
905
+ self == o
906
+ end
907
+
908
+ # Calculates hash code according to all attributes.
909
+ # @return [Fixnum] Hash code
910
+ def hash
911
+ [id, name, type, company, contact, sub_contract_company, sub_contract_contact, parent_agreement_id, customer_po, location_id, business_unit_id, restrict_location_flag, restrict_department_flag, start_date, end_date, no_ending_date_flag, opportunity, cancelled_flag, date_cancelled, reason_cancelled, sla_id, work_order, internal_notes, application_units, application_limit, application_cycle, application_unlimited_flag, one_time_flag, cover_agreement_time, cover_agreement_product, cover_agreement_expense, cover_sales_tax, carry_over_unused, allow_overruns, expired_days, limit, expire_when_zero, charge_to_firm, employee_comp_rate, employee_comp_not_exceed, comp_hourly_rate, comp_limit_amount, bill_cycle_id, bill_one_time_flag, bill_terms_id, invoicing_cycle, bill_to_company, bill_to_site, bill_amount, taxable, prorate_first_bill, bill_start_date, tax_code_id, restrict_down_payment, invoice_description, top_comment, bottom_comment, work_role, work_type, project_type_id, invoice_template_setup_id, bill_time, bill_expenses, bill_products, billable_time_invoice, billable_expense_invoice, billable_product_invoice, _info, period_type].hash
912
+ end
913
+
914
+ # Builds the object from hash
915
+ # @param [Hash] attributes Model attributes in the form of hash
916
+ # @return [Object] Returns the model itself
917
+ def build_from_hash(attributes)
918
+ return nil unless attributes.is_a?(Hash)
919
+ self.class.swagger_types.each_pair do |key, type|
920
+ if type =~ /^Array<(.*)>/i
921
+ # check to ensure the input is an array given that the the attribute
922
+ # is documented as an array but the input is not
923
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
924
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
925
+ end
926
+ elsif !attributes[self.class.attribute_map[key]].nil?
927
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
928
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
929
+ end
930
+
931
+ self
932
+ end
933
+
934
+ # Deserializes the data based on type
935
+ # @param string type Data type
936
+ # @param string value Value to be deserialized
937
+ # @return [Object] Deserialized data
938
+ def _deserialize(type, value)
939
+ case type.to_sym
940
+ when :DateTime
941
+ DateTime.parse(value)
942
+ when :Date
943
+ Date.parse(value)
944
+ when :String
945
+ value.to_s
946
+ when :Integer
947
+ value.to_i
948
+ when :Float
949
+ value.to_f
950
+ when :BOOLEAN
951
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
952
+ true
953
+ else
954
+ false
955
+ end
956
+ when :Object
957
+ # generic object (usually a Hash), return directly
958
+ value
959
+ when /\AArray<(?<inner_type>.+)>\z/
960
+ inner_type = Regexp.last_match[:inner_type]
961
+ value.map { |v| _deserialize(inner_type, v) }
962
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
963
+ k_type = Regexp.last_match[:k_type]
964
+ v_type = Regexp.last_match[:v_type]
965
+ {}.tap do |hash|
966
+ value.each do |k, v|
967
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
968
+ end
969
+ end
970
+ else # model
971
+ temp_model = Connectwise.const_get(type).new
972
+ temp_model.build_from_hash(value)
973
+ end
974
+ end
975
+
976
+ # Returns the string representation of the object
977
+ # @return [String] String presentation of the object
978
+ def to_s
979
+ to_hash.to_s
980
+ end
981
+
982
+ # to_body is an alias to to_hash (backward compatibility)
983
+ # @return [Hash] Returns the object in the form of hash
984
+ def to_body
985
+ to_hash
986
+ end
987
+
988
+ # Returns the object in the form of hash
989
+ # @return [Hash] Returns the object in the form of hash
990
+ def to_hash
991
+ hash = {}
992
+ self.class.attribute_map.each_pair do |attr, param|
993
+ value = self.send(attr)
994
+ next if value.nil?
995
+ hash[param] = _to_hash(value)
996
+ end
997
+ hash
998
+ end
999
+
1000
+ # Outputs non-array value in the form of hash
1001
+ # For object, use to_hash. Otherwise, just return the value
1002
+ # @param [Object] value Any valid value
1003
+ # @return [Hash] Returns the value in the form of hash
1004
+ def _to_hash(value)
1005
+ if value.is_a?(Array)
1006
+ value.compact.map{ |v| _to_hash(v) }
1007
+ elsif value.is_a?(Hash)
1008
+ {}.tap do |hash|
1009
+ value.each { |k, v| hash[k] = _to_hash(v) }
1010
+ end
1011
+ elsif value.respond_to? :to_hash
1012
+ value.to_hash
1013
+ else
1014
+ value
1015
+ end
1016
+ end
1017
+
1018
+ end
1019
+
1020
+ end