affixapi 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (159) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/LICENSE +19 -0
  4. data/README.md +374 -0
  5. data/Rakefile +10 -0
  6. data/affixapi.gemspec +38 -0
  7. data/docs/AddressNoNonNullRequest.md +26 -0
  8. data/docs/AddressResponse.md +26 -0
  9. data/docs/Class20230301Api.md +1401 -0
  10. data/docs/ClientRequest.md +24 -0
  11. data/docs/ClientResponse.md +26 -0
  12. data/docs/CompanyResponse.md +28 -0
  13. data/docs/CoreApi.md +69 -0
  14. data/docs/CreateEmployeeRequest.md +68 -0
  15. data/docs/CreateEmployeeRequestBankAccount.md +26 -0
  16. data/docs/CreateEmployeeRequestManager.md +26 -0
  17. data/docs/CurrencyRequest.md +15 -0
  18. data/docs/CurrencyResponse.md +15 -0
  19. data/docs/DeveloperApi.md +777 -0
  20. data/docs/DisconnectResponse.md +18 -0
  21. data/docs/EmployeeResponse.md +74 -0
  22. data/docs/EmploymentNoNullEnumRequest.md +30 -0
  23. data/docs/EmploymentResponse.md +30 -0
  24. data/docs/GroupNoNullEnumRequest.md +24 -0
  25. data/docs/GroupResponse.md +24 -0
  26. data/docs/IdAndMessageResponse.md +20 -0
  27. data/docs/IdentityResponse.md +22 -0
  28. data/docs/InlineResponse400.md +20 -0
  29. data/docs/InlineResponse401.md +22 -0
  30. data/docs/InlineResponse409.md +22 -0
  31. data/docs/IntrospectResponse.md +24 -0
  32. data/docs/LocationNoNonNullRequest.md +26 -0
  33. data/docs/LocationResponse.md +26 -0
  34. data/docs/ManagementApi.md +420 -0
  35. data/docs/MessageResponse.md +18 -0
  36. data/docs/ModeRequest.md +15 -0
  37. data/docs/ModeResponse.md +15 -0
  38. data/docs/OfficialApi.md +631 -0
  39. data/docs/PayrunResponse.md +30 -0
  40. data/docs/PayslipResponse.md +44 -0
  41. data/docs/PayslipResponseContributions.md +20 -0
  42. data/docs/PayslipResponseDeductions.md +20 -0
  43. data/docs/PayslipResponseEarnings.md +22 -0
  44. data/docs/PayslipResponseTaxes.md +22 -0
  45. data/docs/ProviderRequest.md +15 -0
  46. data/docs/ProviderResponse.md +15 -0
  47. data/docs/ScopesRequest.md +15 -0
  48. data/docs/ScopesResponse.md +15 -0
  49. data/docs/TimeOffBalanceResponse.md +32 -0
  50. data/docs/TimeOffEntryResponse.md +40 -0
  51. data/docs/TimesheetResponse.md +32 -0
  52. data/docs/TokenRequest.md +26 -0
  53. data/docs/TokenResponse.md +26 -0
  54. data/git_push.sh +58 -0
  55. data/lib/openapi_client/api/class20230301_api.rb +1198 -0
  56. data/lib/openapi_client/api/core_api.rb +79 -0
  57. data/lib/openapi_client/api/developer_api.rb +677 -0
  58. data/lib/openapi_client/api/management_api.rb +380 -0
  59. data/lib/openapi_client/api/official_api.rb +543 -0
  60. data/lib/openapi_client/api_client.rb +390 -0
  61. data/lib/openapi_client/api_error.rb +57 -0
  62. data/lib/openapi_client/configuration.rb +288 -0
  63. data/lib/openapi_client/models/address_no_non_null_request.rb +295 -0
  64. data/lib/openapi_client/models/address_response.rb +295 -0
  65. data/lib/openapi_client/models/client_request.rb +269 -0
  66. data/lib/openapi_client/models/client_response.rb +284 -0
  67. data/lib/openapi_client/models/company_response.rb +279 -0
  68. data/lib/openapi_client/models/create_employee_request.rb +568 -0
  69. data/lib/openapi_client/models/create_employee_request_bank_account.rb +259 -0
  70. data/lib/openapi_client/models/create_employee_request_manager.rb +263 -0
  71. data/lib/openapi_client/models/currency_request.rb +38 -0
  72. data/lib/openapi_client/models/currency_response.rb +38 -0
  73. data/lib/openapi_client/models/disconnect_response.rb +258 -0
  74. data/lib/openapi_client/models/employee_response.rb +608 -0
  75. data/lib/openapi_client/models/employment_no_null_enum_request.rb +329 -0
  76. data/lib/openapi_client/models/employment_response.rb +329 -0
  77. data/lib/openapi_client/models/group_no_null_enum_request.rb +283 -0
  78. data/lib/openapi_client/models/group_response.rb +283 -0
  79. data/lib/openapi_client/models/id_and_message_response.rb +239 -0
  80. data/lib/openapi_client/models/identity_response.rb +250 -0
  81. data/lib/openapi_client/models/inline_response400.rb +227 -0
  82. data/lib/openapi_client/models/inline_response401.rb +299 -0
  83. data/lib/openapi_client/models/inline_response409.rb +278 -0
  84. data/lib/openapi_client/models/introspect_response.rb +269 -0
  85. data/lib/openapi_client/models/location_no_non_null_request.rb +263 -0
  86. data/lib/openapi_client/models/location_response.rb +263 -0
  87. data/lib/openapi_client/models/message_response.rb +223 -0
  88. data/lib/openapi_client/models/mode_request.rb +37 -0
  89. data/lib/openapi_client/models/mode_response.rb +37 -0
  90. data/lib/openapi_client/models/payrun_response.rb +342 -0
  91. data/lib/openapi_client/models/payslip_response.rb +448 -0
  92. data/lib/openapi_client/models/payslip_response_contributions.rb +238 -0
  93. data/lib/openapi_client/models/payslip_response_deductions.rb +238 -0
  94. data/lib/openapi_client/models/payslip_response_earnings.rb +250 -0
  95. data/lib/openapi_client/models/payslip_response_taxes.rb +248 -0
  96. data/lib/openapi_client/models/provider_request.rb +70 -0
  97. data/lib/openapi_client/models/provider_response.rb +70 -0
  98. data/lib/openapi_client/models/scopes_request.rb +55 -0
  99. data/lib/openapi_client/models/scopes_response.rb +55 -0
  100. data/lib/openapi_client/models/time_off_balance_response.rb +342 -0
  101. data/lib/openapi_client/models/time_off_entry_response.rb +408 -0
  102. data/lib/openapi_client/models/timesheet_response.rb +318 -0
  103. data/lib/openapi_client/models/token_request.rb +318 -0
  104. data/lib/openapi_client/models/token_response.rb +318 -0
  105. data/lib/openapi_client/version.rb +15 -0
  106. data/lib/openapi_client.rb +86 -0
  107. data/openapi_client-0.0.1.gem +0 -0
  108. data/pkg/affixapi-0.0.1.gem +0 -0
  109. data/spec/api/class20230301_api_spec.rb +260 -0
  110. data/spec/api/core_api_spec.rb +46 -0
  111. data/spec/api/developer_api_spec.rb +160 -0
  112. data/spec/api/management_api_spec.rb +103 -0
  113. data/spec/api/official_api_spec.rb +135 -0
  114. data/spec/api_client_spec.rb +226 -0
  115. data/spec/configuration_spec.rb +42 -0
  116. data/spec/models/address_no_non_null_request_spec.rb +62 -0
  117. data/spec/models/address_response_spec.rb +62 -0
  118. data/spec/models/client_request_spec.rb +52 -0
  119. data/spec/models/client_response_spec.rb +58 -0
  120. data/spec/models/company_response_spec.rb +64 -0
  121. data/spec/models/create_employee_request_bank_account_spec.rb +58 -0
  122. data/spec/models/create_employee_request_manager_spec.rb +58 -0
  123. data/spec/models/create_employee_request_spec.rb +204 -0
  124. data/spec/models/currency_request_spec.rb +28 -0
  125. data/spec/models/currency_response_spec.rb +28 -0
  126. data/spec/models/disconnect_response_spec.rb +38 -0
  127. data/spec/models/employee_response_spec.rb +222 -0
  128. data/spec/models/employment_no_null_enum_request_spec.rb +78 -0
  129. data/spec/models/employment_response_spec.rb +78 -0
  130. data/spec/models/group_no_null_enum_request_spec.rb +56 -0
  131. data/spec/models/group_response_spec.rb +56 -0
  132. data/spec/models/id_and_message_response_spec.rb +40 -0
  133. data/spec/models/identity_response_spec.rb +46 -0
  134. data/spec/models/inline_response400_spec.rb +40 -0
  135. data/spec/models/inline_response401_spec.rb +54 -0
  136. data/spec/models/inline_response409_spec.rb +50 -0
  137. data/spec/models/introspect_response_spec.rb +52 -0
  138. data/spec/models/location_no_non_null_request_spec.rb +58 -0
  139. data/spec/models/location_response_spec.rb +58 -0
  140. data/spec/models/message_response_spec.rb +34 -0
  141. data/spec/models/mode_request_spec.rb +28 -0
  142. data/spec/models/mode_response_spec.rb +28 -0
  143. data/spec/models/payrun_response_spec.rb +78 -0
  144. data/spec/models/payslip_response_contributions_spec.rb +40 -0
  145. data/spec/models/payslip_response_deductions_spec.rb +40 -0
  146. data/spec/models/payslip_response_earnings_spec.rb +46 -0
  147. data/spec/models/payslip_response_spec.rb +116 -0
  148. data/spec/models/payslip_response_taxes_spec.rb +46 -0
  149. data/spec/models/provider_request_spec.rb +28 -0
  150. data/spec/models/provider_response_spec.rb +28 -0
  151. data/spec/models/scopes_request_spec.rb +28 -0
  152. data/spec/models/scopes_response_spec.rb +28 -0
  153. data/spec/models/time_off_balance_response_spec.rb +80 -0
  154. data/spec/models/time_off_entry_response_spec.rb +108 -0
  155. data/spec/models/timesheet_response_spec.rb +76 -0
  156. data/spec/models/token_request_spec.rb +62 -0
  157. data/spec/models/token_response_spec.rb +62 -0
  158. data/spec/spec_helper.rb +111 -0
  159. metadata +349 -0
@@ -0,0 +1,1198 @@
1
+ =begin
2
+ #Affix API
3
+
4
+ #The affixapi.com API documentation. # Introduction Affix API is an OAuth 2.1 application that allows developers to access customer data, without developers needing to manage or maintain integrations; or collect login credentials or API keys from users for these third party systems. # OAuth 2.1 Affix API follows the [OAuth 2.1 spec](https://datatracker.ietf.org/doc/html/draft-ietf-oauth-v2-1-08). As an OAuth application, Affix API handles not only both the collection of sensitive user credentials or API keys, but also builds and maintains the integrations with the providers, so you don't have to. # How to obtain an access token in order to get started, you must: - register a `client_id` - direct your user to the sign in flow (`https://connect.affixapi.com` [with the appropriate query parameters](https://github.com/affixapi/starter-kit/tree/master/connect)) - capture `authorization_code` we will send to your redirect URI after the sign in flow is complete and exchange that `authorization_code` for a Bearer token # Sandbox keys (developer mode) ### dev ``` eyJhbGciOiJFUzI1NiIsImtpZCI6Ims5RmxwSFR1YklmZWNsUU5QRVZzeFcxazFZZ0Zfbk1BWllOSGVuOFQxdGciLCJ0eXAiOiJKV1MifQ.eyJwcm92aWRlciI6InNhbmRib3giLCJzY29wZXMiOlsiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL2NvbXBhbnkiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvZW1wbG95ZWUiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvZW1wbG95ZWVzIiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL2lkZW50aXR5IiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL3BheXJ1bnMiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvcGF5cnVucy86cGF5cnVuX2lkIiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL3RpbWUtb2ZmLWJhbGFuY2VzIiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL3RpbWUtb2ZmLWVudHJpZXMiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvdGltZXNoZWV0cyJdLCJ0b2tlbiI6ImQ1OTZhMmYzLWYzNzktNGE1ZC1hMmRhLTk4OWJmYWViYTg1ZCIsImlhdCI6MTcwMjkyMDkwMywiaXNzIjoicHVibGljYXBpLWludGVybWVkaWF0ZS5kZXYuZW5naW5lZXJpbmcuYWZmaXhhcGkuY29tIiwic3ViIjoiZGV2ZWxvcGVyIiwiYXVkIjoiM0ZEQUVERjktMURDQTRGNTQtODc5NDlGNkEtNDEwMjc2NDMifQ.VLWYjCQvBS0C3ZA6_J3-U-idZj5EYI2IlDdTjAWBxSIHGufp6cqaVodKsF2BeIqcIeB3P0lW-KL9mY3xGd7ckQ ``` #### `employees` endpoint sample: ``` curl --fail \\ -X GET \\ -H 'Authorization: Bearer eyJhbGciOiJFUzI1NiIsImtpZCI6Ims5RmxwSFR1YklmZWNsUU5QRVZzeFcxazFZZ0Zfbk1BWllOSGVuOFQxdGciLCJ0eXAiOiJKV1MifQ.eyJwcm92aWRlciI6InNhbmRib3giLCJzY29wZXMiOlsiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL2NvbXBhbnkiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvZW1wbG95ZWUiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvZW1wbG95ZWVzIiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL2lkZW50aXR5IiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL3BheXJ1bnMiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvcGF5cnVucy86cGF5cnVuX2lkIiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL3RpbWUtb2ZmLWJhbGFuY2VzIiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL3RpbWUtb2ZmLWVudHJpZXMiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvdGltZXNoZWV0cyJdLCJ0b2tlbiI6ImQ1OTZhMmYzLWYzNzktNGE1ZC1hMmRhLTk4OWJmYWViYTg1ZCIsImlhdCI6MTcwMjkyMDkwMywiaXNzIjoicHVibGljYXBpLWludGVybWVkaWF0ZS5kZXYuZW5naW5lZXJpbmcuYWZmaXhhcGkuY29tIiwic3ViIjoiZGV2ZWxvcGVyIiwiYXVkIjoiM0ZEQUVERjktMURDQTRGNTQtODc5NDlGNkEtNDEwMjc2NDMifQ.VLWYjCQvBS0C3ZA6_J3-U-idZj5EYI2IlDdTjAWBxSIHGufp6cqaVodKsF2BeIqcIeB3P0lW-KL9mY3xGd7ckQ' \\ 'https://dev.api.affixapi.com/2023-03-01/developer/employees' ``` ### prod ``` eyJhbGciOiJFUzI1NiIsImtpZCI6Ims5RmxwSFR1YklmZWNsUU5QRVZzeFcxazFZZ0Zfbk1BWllOSGVuOFQxdGciLCJ0eXAiOiJKV1MifQ.eyJwcm92aWRlciI6InNhbmRib3giLCJzY29wZXMiOlsiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL2NvbXBhbnkiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvZW1wbG95ZWUiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvZW1wbG95ZWVzIiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL2lkZW50aXR5IiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL3BheXJ1bnMiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvcGF5cnVucy86cGF5cnVuX2lkIiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL3RpbWUtb2ZmLWJhbGFuY2VzIiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL3RpbWUtb2ZmLWVudHJpZXMiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvdGltZXNoZWV0cyJdLCJ0b2tlbiI6IjI5YjFjYTg4LWNlNjktNDgyZC1iNGZjLTkzMWMzZmJkYWM4ZSIsImlhdCI6MTcwMjkyMTA4MywiaXNzIjoicHVibGljYXBpLWludGVybWVkaWF0ZS5wcm9kLmVuZ2luZWVyaW5nLmFmZml4YXBpLmNvbSIsInN1YiI6ImRldmVsb3BlciIsImF1ZCI6IjA4QkIwODFFLUQ5QUI0RDE0LThERjk5MjMzLTY2NjE1Q0U5In0.2zdpFAmiyYiYk6MOcbXNUwwR4M1Fextnaac340x54AidiWXCyw-u9KeavbqfYF6q8a9kcDLrxhJ8Wc_3tIzuVw ``` #### `employees` endpoint sample: ``` curl --fail \\ -X GET \\ -H 'Authorization: Bearer eyJhbGciOiJFUzI1NiIsImtpZCI6Ims5RmxwSFR1YklmZWNsUU5QRVZzeFcxazFZZ0Zfbk1BWllOSGVuOFQxdGciLCJ0eXAiOiJKV1MifQ.eyJwcm92aWRlciI6InNhbmRib3giLCJzY29wZXMiOlsiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL2NvbXBhbnkiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvZW1wbG95ZWUiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvZW1wbG95ZWVzIiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL2lkZW50aXR5IiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL3BheXJ1bnMiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvcGF5cnVucy86cGF5cnVuX2lkIiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL3RpbWUtb2ZmLWJhbGFuY2VzIiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL3RpbWUtb2ZmLWVudHJpZXMiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvdGltZXNoZWV0cyJdLCJ0b2tlbiI6IjI5YjFjYTg4LWNlNjktNDgyZC1iNGZjLTkzMWMzZmJkYWM4ZSIsImlhdCI6MTcwMjkyMTA4MywiaXNzIjoicHVibGljYXBpLWludGVybWVkaWF0ZS5wcm9kLmVuZ2luZWVyaW5nLmFmZml4YXBpLmNvbSIsInN1YiI6ImRldmVsb3BlciIsImF1ZCI6IjA4QkIwODFFLUQ5QUI0RDE0LThERjk5MjMzLTY2NjE1Q0U5In0.2zdpFAmiyYiYk6MOcbXNUwwR4M1Fextnaac340x54AidiWXCyw-u9KeavbqfYF6q8a9kcDLrxhJ8Wc_3tIzuVw' \\ 'https://api.affixapi.com/2023-03-01/developer/employees' ``` # Webhooks An exciting feature for HR/Payroll modes are webhooks. If enabled, your `webhook_uri` is set on your `client_id` for the respective environment: `dev | prod` Webhooks are configured to make live requests to the underlying integration 1x/hr, and if a difference is detected since the last request, we will send a request to your `webhook_uri` with this shape: ``` { added: <api.v20230301.Employees>[ <api.v20230301.Employee>{ ..., date_of_birth: '2010-08-06', display_full_name: 'Daija Rogahn', employee_number: '57993', employment_status: 'pending', employment_type: 'other', employments: [ { currency: 'eur', effective_date: '2022-02-25', employment_type: 'other', job_title: 'Dynamic Implementation Manager', pay_frequency: 'semimonthly', pay_period: 'YEAR', pay_rate: 96000, }, ], first_name: 'Daija', ... } ], removed: [], updated: [ <api.v20230301.Employee>{ ..., date_of_birth: '2009-11-09', display_full_name: 'Lourdes Stiedemann', employee_number: '63189', employment_status: 'leave', employment_type: 'full_time', employments: [ { currency: 'gbp', effective_date: '2023-01-16', employment_type: 'full_time', job_title: 'Forward Brand Planner', pay_frequency: 'semimonthly', pay_period: 'YEAR', pay_rate: 86000, }, ], first_name: 'Lourdes', } ] } ``` the following headers will be sent with webhook requests: ``` x-affix-api-signature: ab8474e609db95d5df3adc39ea3add7a7544bd215c5c520a30a650ae93a2fba7 x-affix-api-origin: webhooks-employees-webhook user-agent: affixapi.com ``` Before trusting the payload, you should sign the payload and verify the signature matches the signature sent by the `affixapi.com` service. This secures that the data sent to your `webhook_uri` is from the `affixapi.com` server. The signature is created by combining the signing secret (your `client_secret`) with the body of the request sent using a standard HMAC-SHA256 keyed hash. The signature can be created via: - create an `HMAC` with your `client_secret` - update the `HMAC` with the payload - get the hex digest -> this is the signature Sample `typescript` code that follows this recipe: ``` import { createHmac } from 'crypto'; export const computeSignature = ({ str, signingSecret, }: { signingSecret: string; str: string; }): string => { const hmac = createHmac('sha256', signingSecret); hmac.update(str); const signature = hmac.digest('hex'); return signature; }; ``` ## Rate limits Open endpoints (not gated by an API key) (applied at endpoint level): - 15 requests every 1 minute (by IP address) - 25 requests every 5 minutes (by IP address) Gated endpoints (require an API key) (applied at endpoint level): - 40 requests every 1 minute (by IP address) - 40 requests every 5 minutes (by `client_id`) Things to keep in mind: - Open endpoints (not gated by an API key) will likely be called by your users, not you, so rate limits generally would not apply to you. - As a developer, rate limits are applied at the endpoint granularity. - For example, say the rate limits below are 10 requests per minute by ip. from that same ip, within 1 minute, you get: - 10 requests per minute on `/orders`, - another 10 requests per minute on `/items`, - and another 10 requests per minute on `/identity`, - for a total of 30 requests per minute.
5
+
6
+ The version of the OpenAPI document: 2023-03-01
7
+ Contact: developers@affixapi.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.1.1
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module OpenapiClient
16
+ class Class20230301Api
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Company
23
+ # Retrieve company information
24
+ # @param [Hash] opts the optional parameters
25
+ # @return [Array<CompanyResponse>]
26
+ def developer_companies20230301(opts = {})
27
+ data, _status_code, _headers = developer_companies20230301_with_http_info(opts)
28
+ data
29
+ end
30
+
31
+ # Company
32
+ # Retrieve company information
33
+ # @param [Hash] opts the optional parameters
34
+ # @return [Array<(Array<CompanyResponse>, Integer, Hash)>] Array<CompanyResponse> data, response status code and response headers
35
+ def developer_companies20230301_with_http_info(opts = {})
36
+ if @api_client.config.debugging
37
+ @api_client.config.logger.debug 'Calling API: Class20230301Api.developer_companies20230301 ...'
38
+ end
39
+ # resource path
40
+ local_var_path = '/2023-03-01/developer/company'
41
+
42
+ # query parameters
43
+ query_params = opts[:query_params] || {}
44
+
45
+ # header parameters
46
+ header_params = opts[:header_params] || {}
47
+ # HTTP header 'Accept' (if needed)
48
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
49
+
50
+ # form parameters
51
+ form_params = opts[:form_params] || {}
52
+
53
+ # http body (model)
54
+ post_body = opts[:debug_body]
55
+
56
+ # return_type
57
+ return_type = opts[:debug_return_type] || 'Array<CompanyResponse>'
58
+
59
+ # auth_names
60
+ auth_names = opts[:debug_auth_names] || ['access-token']
61
+
62
+ new_options = opts.merge(
63
+ :operation => :"Class20230301Api.developer_companies20230301",
64
+ :header_params => header_params,
65
+ :query_params => query_params,
66
+ :form_params => form_params,
67
+ :body => post_body,
68
+ :auth_names => auth_names,
69
+ :return_type => return_type
70
+ )
71
+
72
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
73
+ if @api_client.config.debugging
74
+ @api_client.config.logger.debug "API called: Class20230301Api#developer_companies20230301\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
75
+ end
76
+ return data, status_code, headers
77
+ end
78
+
79
+ # Create employee
80
+ # Creates a new Employee
81
+ # @param create_employee_request [CreateEmployeeRequest]
82
+ # @param [Hash] opts the optional parameters
83
+ # @return [EmployeeResponse]
84
+ def developer_create_employee20230301(create_employee_request, opts = {})
85
+ data, _status_code, _headers = developer_create_employee20230301_with_http_info(create_employee_request, opts)
86
+ data
87
+ end
88
+
89
+ # Create employee
90
+ # Creates a new Employee
91
+ # @param create_employee_request [CreateEmployeeRequest]
92
+ # @param [Hash] opts the optional parameters
93
+ # @return [Array<(EmployeeResponse, Integer, Hash)>] EmployeeResponse data, response status code and response headers
94
+ def developer_create_employee20230301_with_http_info(create_employee_request, opts = {})
95
+ if @api_client.config.debugging
96
+ @api_client.config.logger.debug 'Calling API: Class20230301Api.developer_create_employee20230301 ...'
97
+ end
98
+ # verify the required parameter 'create_employee_request' is set
99
+ if @api_client.config.client_side_validation && create_employee_request.nil?
100
+ fail ArgumentError, "Missing the required parameter 'create_employee_request' when calling Class20230301Api.developer_create_employee20230301"
101
+ end
102
+ # resource path
103
+ local_var_path = '/2023-03-01/developer/employee'
104
+
105
+ # query parameters
106
+ query_params = opts[:query_params] || {}
107
+
108
+ # header parameters
109
+ header_params = opts[:header_params] || {}
110
+ # HTTP header 'Accept' (if needed)
111
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
112
+ # HTTP header 'Content-Type'
113
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
114
+
115
+ # form parameters
116
+ form_params = opts[:form_params] || {}
117
+
118
+ # http body (model)
119
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(create_employee_request)
120
+
121
+ # return_type
122
+ return_type = opts[:debug_return_type] || 'EmployeeResponse'
123
+
124
+ # auth_names
125
+ auth_names = opts[:debug_auth_names] || ['access-token']
126
+
127
+ new_options = opts.merge(
128
+ :operation => :"Class20230301Api.developer_create_employee20230301",
129
+ :header_params => header_params,
130
+ :query_params => query_params,
131
+ :form_params => form_params,
132
+ :body => post_body,
133
+ :auth_names => auth_names,
134
+ :return_type => return_type
135
+ )
136
+
137
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
138
+ if @api_client.config.debugging
139
+ @api_client.config.logger.debug "API called: Class20230301Api#developer_create_employee20230301\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
140
+ end
141
+ return data, status_code, headers
142
+ end
143
+
144
+ # Employees
145
+ # List the individuals (employees, contractors, accountants, and others) listed in the HRIS/Payroll software
146
+ # @param [Hash] opts the optional parameters
147
+ # @return [Array<EmployeeResponse>]
148
+ def developer_employees20230301(opts = {})
149
+ data, _status_code, _headers = developer_employees20230301_with_http_info(opts)
150
+ data
151
+ end
152
+
153
+ # Employees
154
+ # List the individuals (employees, contractors, accountants, and others) listed in the HRIS/Payroll software
155
+ # @param [Hash] opts the optional parameters
156
+ # @return [Array<(Array<EmployeeResponse>, Integer, Hash)>] Array<EmployeeResponse> data, response status code and response headers
157
+ def developer_employees20230301_with_http_info(opts = {})
158
+ if @api_client.config.debugging
159
+ @api_client.config.logger.debug 'Calling API: Class20230301Api.developer_employees20230301 ...'
160
+ end
161
+ # resource path
162
+ local_var_path = '/2023-03-01/developer/employees'
163
+
164
+ # query parameters
165
+ query_params = opts[:query_params] || {}
166
+
167
+ # header parameters
168
+ header_params = opts[:header_params] || {}
169
+ # HTTP header 'Accept' (if needed)
170
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
171
+
172
+ # form parameters
173
+ form_params = opts[:form_params] || {}
174
+
175
+ # http body (model)
176
+ post_body = opts[:debug_body]
177
+
178
+ # return_type
179
+ return_type = opts[:debug_return_type] || 'Array<EmployeeResponse>'
180
+
181
+ # auth_names
182
+ auth_names = opts[:debug_auth_names] || ['access-token']
183
+
184
+ new_options = opts.merge(
185
+ :operation => :"Class20230301Api.developer_employees20230301",
186
+ :header_params => header_params,
187
+ :query_params => query_params,
188
+ :form_params => form_params,
189
+ :body => post_body,
190
+ :auth_names => auth_names,
191
+ :return_type => return_type
192
+ )
193
+
194
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
195
+ if @api_client.config.debugging
196
+ @api_client.config.logger.debug "API called: Class20230301Api#developer_employees20230301\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
197
+ end
198
+ return data, status_code, headers
199
+ end
200
+
201
+ # Groups
202
+ # The Group object is used to represent any subset of employees, such as PayGroup, Team, or Department. Employees can be in multiple Groups.
203
+ # @param [Hash] opts the optional parameters
204
+ # @return [Array<GroupResponse>]
205
+ def developer_groups20230301(opts = {})
206
+ data, _status_code, _headers = developer_groups20230301_with_http_info(opts)
207
+ data
208
+ end
209
+
210
+ # Groups
211
+ # The Group object is used to represent any subset of employees, such as PayGroup, Team, or Department. Employees can be in multiple Groups.
212
+ # @param [Hash] opts the optional parameters
213
+ # @return [Array<(Array<GroupResponse>, Integer, Hash)>] Array<GroupResponse> data, response status code and response headers
214
+ def developer_groups20230301_with_http_info(opts = {})
215
+ if @api_client.config.debugging
216
+ @api_client.config.logger.debug 'Calling API: Class20230301Api.developer_groups20230301 ...'
217
+ end
218
+ # resource path
219
+ local_var_path = '/2023-03-01/developer/groups'
220
+
221
+ # query parameters
222
+ query_params = opts[:query_params] || {}
223
+
224
+ # header parameters
225
+ header_params = opts[:header_params] || {}
226
+ # HTTP header 'Accept' (if needed)
227
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
228
+
229
+ # form parameters
230
+ form_params = opts[:form_params] || {}
231
+
232
+ # http body (model)
233
+ post_body = opts[:debug_body]
234
+
235
+ # return_type
236
+ return_type = opts[:debug_return_type] || 'Array<GroupResponse>'
237
+
238
+ # auth_names
239
+ auth_names = opts[:debug_auth_names] || ['access-token']
240
+
241
+ new_options = opts.merge(
242
+ :operation => :"Class20230301Api.developer_groups20230301",
243
+ :header_params => header_params,
244
+ :query_params => query_params,
245
+ :form_params => form_params,
246
+ :body => post_body,
247
+ :auth_names => auth_names,
248
+ :return_type => return_type
249
+ )
250
+
251
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
252
+ if @api_client.config.debugging
253
+ @api_client.config.logger.debug "API called: Class20230301Api#developer_groups20230301\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
254
+ end
255
+ return data, status_code, headers
256
+ end
257
+
258
+ # Identity
259
+ # List information of the user for the respective account
260
+ # @param [Hash] opts the optional parameters
261
+ # @return [IdentityResponse]
262
+ def developer_identity20230301(opts = {})
263
+ data, _status_code, _headers = developer_identity20230301_with_http_info(opts)
264
+ data
265
+ end
266
+
267
+ # Identity
268
+ # List information of the user for the respective account
269
+ # @param [Hash] opts the optional parameters
270
+ # @return [Array<(IdentityResponse, Integer, Hash)>] IdentityResponse data, response status code and response headers
271
+ def developer_identity20230301_with_http_info(opts = {})
272
+ if @api_client.config.debugging
273
+ @api_client.config.logger.debug 'Calling API: Class20230301Api.developer_identity20230301 ...'
274
+ end
275
+ # resource path
276
+ local_var_path = '/2023-03-01/developer/identity'
277
+
278
+ # query parameters
279
+ query_params = opts[:query_params] || {}
280
+
281
+ # header parameters
282
+ header_params = opts[:header_params] || {}
283
+ # HTTP header 'Accept' (if needed)
284
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
285
+
286
+ # form parameters
287
+ form_params = opts[:form_params] || {}
288
+
289
+ # http body (model)
290
+ post_body = opts[:debug_body]
291
+
292
+ # return_type
293
+ return_type = opts[:debug_return_type] || 'IdentityResponse'
294
+
295
+ # auth_names
296
+ auth_names = opts[:debug_auth_names] || ['access-token']
297
+
298
+ new_options = opts.merge(
299
+ :operation => :"Class20230301Api.developer_identity20230301",
300
+ :header_params => header_params,
301
+ :query_params => query_params,
302
+ :form_params => form_params,
303
+ :body => post_body,
304
+ :auth_names => auth_names,
305
+ :return_type => return_type
306
+ )
307
+
308
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
309
+ if @api_client.config.debugging
310
+ @api_client.config.logger.debug "API called: Class20230301Api#developer_identity20230301\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
311
+ end
312
+ return data, status_code, headers
313
+ end
314
+
315
+ # Payruns
316
+ # List all the pay runs that occurred during the respective period. Supported integrations: - sageone - simplepay.ie - brightpay connect
317
+ # @param start_date [Date] The start date of the search period
318
+ # @param end_date [Date] The end date of the search period
319
+ # @param [Hash] opts the optional parameters
320
+ # @return [Array<PayrunResponse>]
321
+ def developer_payruns20230301(start_date, end_date, opts = {})
322
+ data, _status_code, _headers = developer_payruns20230301_with_http_info(start_date, end_date, opts)
323
+ data
324
+ end
325
+
326
+ # Payruns
327
+ # List all the pay runs that occurred during the respective period. Supported integrations: - sageone - simplepay.ie - brightpay connect
328
+ # @param start_date [Date] The start date of the search period
329
+ # @param end_date [Date] The end date of the search period
330
+ # @param [Hash] opts the optional parameters
331
+ # @return [Array<(Array<PayrunResponse>, Integer, Hash)>] Array<PayrunResponse> data, response status code and response headers
332
+ def developer_payruns20230301_with_http_info(start_date, end_date, opts = {})
333
+ if @api_client.config.debugging
334
+ @api_client.config.logger.debug 'Calling API: Class20230301Api.developer_payruns20230301 ...'
335
+ end
336
+ # verify the required parameter 'start_date' is set
337
+ if @api_client.config.client_side_validation && start_date.nil?
338
+ fail ArgumentError, "Missing the required parameter 'start_date' when calling Class20230301Api.developer_payruns20230301"
339
+ end
340
+ # verify the required parameter 'end_date' is set
341
+ if @api_client.config.client_side_validation && end_date.nil?
342
+ fail ArgumentError, "Missing the required parameter 'end_date' when calling Class20230301Api.developer_payruns20230301"
343
+ end
344
+ # resource path
345
+ local_var_path = '/2023-03-01/developer/payruns'
346
+
347
+ # query parameters
348
+ query_params = opts[:query_params] || {}
349
+ query_params[:'start_date'] = start_date
350
+ query_params[:'end_date'] = end_date
351
+
352
+ # header parameters
353
+ header_params = opts[:header_params] || {}
354
+ # HTTP header 'Accept' (if needed)
355
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
356
+
357
+ # form parameters
358
+ form_params = opts[:form_params] || {}
359
+
360
+ # http body (model)
361
+ post_body = opts[:debug_body]
362
+
363
+ # return_type
364
+ return_type = opts[:debug_return_type] || 'Array<PayrunResponse>'
365
+
366
+ # auth_names
367
+ auth_names = opts[:debug_auth_names] || ['access-token']
368
+
369
+ new_options = opts.merge(
370
+ :operation => :"Class20230301Api.developer_payruns20230301",
371
+ :header_params => header_params,
372
+ :query_params => query_params,
373
+ :form_params => form_params,
374
+ :body => post_body,
375
+ :auth_names => auth_names,
376
+ :return_type => return_type
377
+ )
378
+
379
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
380
+ if @api_client.config.debugging
381
+ @api_client.config.logger.debug "API called: Class20230301Api#developer_payruns20230301\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
382
+ end
383
+ return data, status_code, headers
384
+ end
385
+
386
+ # Payslips
387
+ # Retrieves payslips from a specific payrun. Supported integrations: - sageone - simplepay.ie - brightpay connect
388
+ # @param payrun_id [String] The id of the payrun.
389
+ # @param [Hash] opts the optional parameters
390
+ # @return [Array<PayslipResponse>]
391
+ def developer_payslips20230301(payrun_id, opts = {})
392
+ data, _status_code, _headers = developer_payslips20230301_with_http_info(payrun_id, opts)
393
+ data
394
+ end
395
+
396
+ # Payslips
397
+ # Retrieves payslips from a specific payrun. Supported integrations: - sageone - simplepay.ie - brightpay connect
398
+ # @param payrun_id [String] The id of the payrun.
399
+ # @param [Hash] opts the optional parameters
400
+ # @return [Array<(Array<PayslipResponse>, Integer, Hash)>] Array<PayslipResponse> data, response status code and response headers
401
+ def developer_payslips20230301_with_http_info(payrun_id, opts = {})
402
+ if @api_client.config.debugging
403
+ @api_client.config.logger.debug 'Calling API: Class20230301Api.developer_payslips20230301 ...'
404
+ end
405
+ # verify the required parameter 'payrun_id' is set
406
+ if @api_client.config.client_side_validation && payrun_id.nil?
407
+ fail ArgumentError, "Missing the required parameter 'payrun_id' when calling Class20230301Api.developer_payslips20230301"
408
+ end
409
+ # resource path
410
+ local_var_path = '/2023-03-01/developer/payruns/{payrun_id}'.sub('{' + 'payrun_id' + '}', CGI.escape(payrun_id.to_s))
411
+
412
+ # query parameters
413
+ query_params = opts[:query_params] || {}
414
+
415
+ # header parameters
416
+ header_params = opts[:header_params] || {}
417
+ # HTTP header 'Accept' (if needed)
418
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
419
+
420
+ # form parameters
421
+ form_params = opts[:form_params] || {}
422
+
423
+ # http body (model)
424
+ post_body = opts[:debug_body]
425
+
426
+ # return_type
427
+ return_type = opts[:debug_return_type] || 'Array<PayslipResponse>'
428
+
429
+ # auth_names
430
+ auth_names = opts[:debug_auth_names] || ['access-token']
431
+
432
+ new_options = opts.merge(
433
+ :operation => :"Class20230301Api.developer_payslips20230301",
434
+ :header_params => header_params,
435
+ :query_params => query_params,
436
+ :form_params => form_params,
437
+ :body => post_body,
438
+ :auth_names => auth_names,
439
+ :return_type => return_type
440
+ )
441
+
442
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
443
+ if @api_client.config.debugging
444
+ @api_client.config.logger.debug "API called: Class20230301Api#developer_payslips20230301\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
445
+ end
446
+ return data, status_code, headers
447
+ end
448
+
449
+ # Time off balances
450
+ # Retrieve all time off balances.
451
+ # @param [Hash] opts the optional parameters
452
+ # @return [Array<TimeOffBalanceResponse>]
453
+ def developer_time_off_balances20230301(opts = {})
454
+ data, _status_code, _headers = developer_time_off_balances20230301_with_http_info(opts)
455
+ data
456
+ end
457
+
458
+ # Time off balances
459
+ # Retrieve all time off balances.
460
+ # @param [Hash] opts the optional parameters
461
+ # @return [Array<(Array<TimeOffBalanceResponse>, Integer, Hash)>] Array<TimeOffBalanceResponse> data, response status code and response headers
462
+ def developer_time_off_balances20230301_with_http_info(opts = {})
463
+ if @api_client.config.debugging
464
+ @api_client.config.logger.debug 'Calling API: Class20230301Api.developer_time_off_balances20230301 ...'
465
+ end
466
+ # resource path
467
+ local_var_path = '/2023-03-01/developer/time-off-balances'
468
+
469
+ # query parameters
470
+ query_params = opts[:query_params] || {}
471
+
472
+ # header parameters
473
+ header_params = opts[:header_params] || {}
474
+ # HTTP header 'Accept' (if needed)
475
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
476
+
477
+ # form parameters
478
+ form_params = opts[:form_params] || {}
479
+
480
+ # http body (model)
481
+ post_body = opts[:debug_body]
482
+
483
+ # return_type
484
+ return_type = opts[:debug_return_type] || 'Array<TimeOffBalanceResponse>'
485
+
486
+ # auth_names
487
+ auth_names = opts[:debug_auth_names] || ['access-token']
488
+
489
+ new_options = opts.merge(
490
+ :operation => :"Class20230301Api.developer_time_off_balances20230301",
491
+ :header_params => header_params,
492
+ :query_params => query_params,
493
+ :form_params => form_params,
494
+ :body => post_body,
495
+ :auth_names => auth_names,
496
+ :return_type => return_type
497
+ )
498
+
499
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
500
+ if @api_client.config.debugging
501
+ @api_client.config.logger.debug "API called: Class20230301Api#developer_time_off_balances20230301\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
502
+ end
503
+ return data, status_code, headers
504
+ end
505
+
506
+ # Time off entries
507
+ # Retrieve time off / absence entries
508
+ # @param [Hash] opts the optional parameters
509
+ # @return [Array<TimeOffEntryResponse>]
510
+ def developer_time_off_entries20230301(opts = {})
511
+ data, _status_code, _headers = developer_time_off_entries20230301_with_http_info(opts)
512
+ data
513
+ end
514
+
515
+ # Time off entries
516
+ # Retrieve time off / absence entries
517
+ # @param [Hash] opts the optional parameters
518
+ # @return [Array<(Array<TimeOffEntryResponse>, Integer, Hash)>] Array<TimeOffEntryResponse> data, response status code and response headers
519
+ def developer_time_off_entries20230301_with_http_info(opts = {})
520
+ if @api_client.config.debugging
521
+ @api_client.config.logger.debug 'Calling API: Class20230301Api.developer_time_off_entries20230301 ...'
522
+ end
523
+ # resource path
524
+ local_var_path = '/2023-03-01/developer/time-off-entries'
525
+
526
+ # query parameters
527
+ query_params = opts[:query_params] || {}
528
+
529
+ # header parameters
530
+ header_params = opts[:header_params] || {}
531
+ # HTTP header 'Accept' (if needed)
532
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
533
+
534
+ # form parameters
535
+ form_params = opts[:form_params] || {}
536
+
537
+ # http body (model)
538
+ post_body = opts[:debug_body]
539
+
540
+ # return_type
541
+ return_type = opts[:debug_return_type] || 'Array<TimeOffEntryResponse>'
542
+
543
+ # auth_names
544
+ auth_names = opts[:debug_auth_names] || ['access-token']
545
+
546
+ new_options = opts.merge(
547
+ :operation => :"Class20230301Api.developer_time_off_entries20230301",
548
+ :header_params => header_params,
549
+ :query_params => query_params,
550
+ :form_params => form_params,
551
+ :body => post_body,
552
+ :auth_names => auth_names,
553
+ :return_type => return_type
554
+ )
555
+
556
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
557
+ if @api_client.config.debugging
558
+ @api_client.config.logger.debug "API called: Class20230301Api#developer_time_off_entries20230301\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
559
+ end
560
+ return data, status_code, headers
561
+ end
562
+
563
+ # Timesheets
564
+ # Retrieve Timesheets
565
+ # @param [Hash] opts the optional parameters
566
+ # @return [Array<TimesheetResponse>]
567
+ def developer_timesheets20230301(opts = {})
568
+ data, _status_code, _headers = developer_timesheets20230301_with_http_info(opts)
569
+ data
570
+ end
571
+
572
+ # Timesheets
573
+ # Retrieve Timesheets
574
+ # @param [Hash] opts the optional parameters
575
+ # @return [Array<(Array<TimesheetResponse>, Integer, Hash)>] Array<TimesheetResponse> data, response status code and response headers
576
+ def developer_timesheets20230301_with_http_info(opts = {})
577
+ if @api_client.config.debugging
578
+ @api_client.config.logger.debug 'Calling API: Class20230301Api.developer_timesheets20230301 ...'
579
+ end
580
+ # resource path
581
+ local_var_path = '/2023-03-01/developer/timesheets'
582
+
583
+ # query parameters
584
+ query_params = opts[:query_params] || {}
585
+
586
+ # header parameters
587
+ header_params = opts[:header_params] || {}
588
+ # HTTP header 'Accept' (if needed)
589
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
590
+
591
+ # form parameters
592
+ form_params = opts[:form_params] || {}
593
+
594
+ # http body (model)
595
+ post_body = opts[:debug_body]
596
+
597
+ # return_type
598
+ return_type = opts[:debug_return_type] || 'Array<TimesheetResponse>'
599
+
600
+ # auth_names
601
+ auth_names = opts[:debug_auth_names] || ['access-token']
602
+
603
+ new_options = opts.merge(
604
+ :operation => :"Class20230301Api.developer_timesheets20230301",
605
+ :header_params => header_params,
606
+ :query_params => query_params,
607
+ :form_params => form_params,
608
+ :body => post_body,
609
+ :auth_names => auth_names,
610
+ :return_type => return_type
611
+ )
612
+
613
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
614
+ if @api_client.config.debugging
615
+ @api_client.config.logger.debug "API called: Class20230301Api#developer_timesheets20230301\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
616
+ end
617
+ return data, status_code, headers
618
+ end
619
+
620
+ # Work locations
621
+ # The Location object is used to represent an address that can be associated with an employee
622
+ # @param [Hash] opts the optional parameters
623
+ # @return [Array<LocationResponse>]
624
+ def developer_work_locations20230301(opts = {})
625
+ data, _status_code, _headers = developer_work_locations20230301_with_http_info(opts)
626
+ data
627
+ end
628
+
629
+ # Work locations
630
+ # The Location object is used to represent an address that can be associated with an employee
631
+ # @param [Hash] opts the optional parameters
632
+ # @return [Array<(Array<LocationResponse>, Integer, Hash)>] Array<LocationResponse> data, response status code and response headers
633
+ def developer_work_locations20230301_with_http_info(opts = {})
634
+ if @api_client.config.debugging
635
+ @api_client.config.logger.debug 'Calling API: Class20230301Api.developer_work_locations20230301 ...'
636
+ end
637
+ # resource path
638
+ local_var_path = '/2023-03-01/developer/work-locations'
639
+
640
+ # query parameters
641
+ query_params = opts[:query_params] || {}
642
+
643
+ # header parameters
644
+ header_params = opts[:header_params] || {}
645
+ # HTTP header 'Accept' (if needed)
646
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
647
+
648
+ # form parameters
649
+ form_params = opts[:form_params] || {}
650
+
651
+ # http body (model)
652
+ post_body = opts[:debug_body]
653
+
654
+ # return_type
655
+ return_type = opts[:debug_return_type] || 'Array<LocationResponse>'
656
+
657
+ # auth_names
658
+ auth_names = opts[:debug_auth_names] || ['access-token']
659
+
660
+ new_options = opts.merge(
661
+ :operation => :"Class20230301Api.developer_work_locations20230301",
662
+ :header_params => header_params,
663
+ :query_params => query_params,
664
+ :form_params => form_params,
665
+ :body => post_body,
666
+ :auth_names => auth_names,
667
+ :return_type => return_type
668
+ )
669
+
670
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
671
+ if @api_client.config.debugging
672
+ @api_client.config.logger.debug "API called: Class20230301Api#developer_work_locations20230301\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
673
+ end
674
+ return data, status_code, headers
675
+ end
676
+
677
+ # Company
678
+ # Retrieve company information
679
+ # @param [Hash] opts the optional parameters
680
+ # @return [Array<CompanyResponse>]
681
+ def official_companies20230301(opts = {})
682
+ data, _status_code, _headers = official_companies20230301_with_http_info(opts)
683
+ data
684
+ end
685
+
686
+ # Company
687
+ # Retrieve company information
688
+ # @param [Hash] opts the optional parameters
689
+ # @return [Array<(Array<CompanyResponse>, Integer, Hash)>] Array<CompanyResponse> data, response status code and response headers
690
+ def official_companies20230301_with_http_info(opts = {})
691
+ if @api_client.config.debugging
692
+ @api_client.config.logger.debug 'Calling API: Class20230301Api.official_companies20230301 ...'
693
+ end
694
+ # resource path
695
+ local_var_path = '/2023-03-01/official/company'
696
+
697
+ # query parameters
698
+ query_params = opts[:query_params] || {}
699
+
700
+ # header parameters
701
+ header_params = opts[:header_params] || {}
702
+ # HTTP header 'Accept' (if needed)
703
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
704
+
705
+ # form parameters
706
+ form_params = opts[:form_params] || {}
707
+
708
+ # http body (model)
709
+ post_body = opts[:debug_body]
710
+
711
+ # return_type
712
+ return_type = opts[:debug_return_type] || 'Array<CompanyResponse>'
713
+
714
+ # auth_names
715
+ auth_names = opts[:debug_auth_names] || ['access-token']
716
+
717
+ new_options = opts.merge(
718
+ :operation => :"Class20230301Api.official_companies20230301",
719
+ :header_params => header_params,
720
+ :query_params => query_params,
721
+ :form_params => form_params,
722
+ :body => post_body,
723
+ :auth_names => auth_names,
724
+ :return_type => return_type
725
+ )
726
+
727
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
728
+ if @api_client.config.debugging
729
+ @api_client.config.logger.debug "API called: Class20230301Api#official_companies20230301\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
730
+ end
731
+ return data, status_code, headers
732
+ end
733
+
734
+ # Create Employee
735
+ # Creates a new Employee
736
+ # @param create_employee_request [CreateEmployeeRequest]
737
+ # @param [Hash] opts the optional parameters
738
+ # @return [EmployeeResponse]
739
+ def official_create_employee20230301(create_employee_request, opts = {})
740
+ data, _status_code, _headers = official_create_employee20230301_with_http_info(create_employee_request, opts)
741
+ data
742
+ end
743
+
744
+ # Create Employee
745
+ # Creates a new Employee
746
+ # @param create_employee_request [CreateEmployeeRequest]
747
+ # @param [Hash] opts the optional parameters
748
+ # @return [Array<(EmployeeResponse, Integer, Hash)>] EmployeeResponse data, response status code and response headers
749
+ def official_create_employee20230301_with_http_info(create_employee_request, opts = {})
750
+ if @api_client.config.debugging
751
+ @api_client.config.logger.debug 'Calling API: Class20230301Api.official_create_employee20230301 ...'
752
+ end
753
+ # verify the required parameter 'create_employee_request' is set
754
+ if @api_client.config.client_side_validation && create_employee_request.nil?
755
+ fail ArgumentError, "Missing the required parameter 'create_employee_request' when calling Class20230301Api.official_create_employee20230301"
756
+ end
757
+ # resource path
758
+ local_var_path = '/2023-03-01/official/employee'
759
+
760
+ # query parameters
761
+ query_params = opts[:query_params] || {}
762
+
763
+ # header parameters
764
+ header_params = opts[:header_params] || {}
765
+ # HTTP header 'Accept' (if needed)
766
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
767
+ # HTTP header 'Content-Type'
768
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
769
+
770
+ # form parameters
771
+ form_params = opts[:form_params] || {}
772
+
773
+ # http body (model)
774
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(create_employee_request)
775
+
776
+ # return_type
777
+ return_type = opts[:debug_return_type] || 'EmployeeResponse'
778
+
779
+ # auth_names
780
+ auth_names = opts[:debug_auth_names] || ['access-token']
781
+
782
+ new_options = opts.merge(
783
+ :operation => :"Class20230301Api.official_create_employee20230301",
784
+ :header_params => header_params,
785
+ :query_params => query_params,
786
+ :form_params => form_params,
787
+ :body => post_body,
788
+ :auth_names => auth_names,
789
+ :return_type => return_type
790
+ )
791
+
792
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
793
+ if @api_client.config.debugging
794
+ @api_client.config.logger.debug "API called: Class20230301Api#official_create_employee20230301\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
795
+ end
796
+ return data, status_code, headers
797
+ end
798
+
799
+ # Employees
800
+ # List the individuals (employees, contractors, accountants, and others) listed in the HRIS/Payroll software
801
+ # @param [Hash] opts the optional parameters
802
+ # @return [Array<EmployeeResponse>]
803
+ def official_employees20230301(opts = {})
804
+ data, _status_code, _headers = official_employees20230301_with_http_info(opts)
805
+ data
806
+ end
807
+
808
+ # Employees
809
+ # List the individuals (employees, contractors, accountants, and others) listed in the HRIS/Payroll software
810
+ # @param [Hash] opts the optional parameters
811
+ # @return [Array<(Array<EmployeeResponse>, Integer, Hash)>] Array<EmployeeResponse> data, response status code and response headers
812
+ def official_employees20230301_with_http_info(opts = {})
813
+ if @api_client.config.debugging
814
+ @api_client.config.logger.debug 'Calling API: Class20230301Api.official_employees20230301 ...'
815
+ end
816
+ # resource path
817
+ local_var_path = '/2023-03-01/official/employees'
818
+
819
+ # query parameters
820
+ query_params = opts[:query_params] || {}
821
+
822
+ # header parameters
823
+ header_params = opts[:header_params] || {}
824
+ # HTTP header 'Accept' (if needed)
825
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
826
+
827
+ # form parameters
828
+ form_params = opts[:form_params] || {}
829
+
830
+ # http body (model)
831
+ post_body = opts[:debug_body]
832
+
833
+ # return_type
834
+ return_type = opts[:debug_return_type] || 'Array<EmployeeResponse>'
835
+
836
+ # auth_names
837
+ auth_names = opts[:debug_auth_names] || ['access-token']
838
+
839
+ new_options = opts.merge(
840
+ :operation => :"Class20230301Api.official_employees20230301",
841
+ :header_params => header_params,
842
+ :query_params => query_params,
843
+ :form_params => form_params,
844
+ :body => post_body,
845
+ :auth_names => auth_names,
846
+ :return_type => return_type
847
+ )
848
+
849
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
850
+ if @api_client.config.debugging
851
+ @api_client.config.logger.debug "API called: Class20230301Api#official_employees20230301\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
852
+ end
853
+ return data, status_code, headers
854
+ end
855
+
856
+ # Groups
857
+ # The Group object is used to represent any subset of employees, such as PayGroup, Team, or Department. Employees can be in multiple Groups.
858
+ # @param [Hash] opts the optional parameters
859
+ # @return [Array<GroupResponse>]
860
+ def official_groups20230301(opts = {})
861
+ data, _status_code, _headers = official_groups20230301_with_http_info(opts)
862
+ data
863
+ end
864
+
865
+ # Groups
866
+ # The Group object is used to represent any subset of employees, such as PayGroup, Team, or Department. Employees can be in multiple Groups.
867
+ # @param [Hash] opts the optional parameters
868
+ # @return [Array<(Array<GroupResponse>, Integer, Hash)>] Array<GroupResponse> data, response status code and response headers
869
+ def official_groups20230301_with_http_info(opts = {})
870
+ if @api_client.config.debugging
871
+ @api_client.config.logger.debug 'Calling API: Class20230301Api.official_groups20230301 ...'
872
+ end
873
+ # resource path
874
+ local_var_path = '/2023-03-01/official/groups'
875
+
876
+ # query parameters
877
+ query_params = opts[:query_params] || {}
878
+
879
+ # header parameters
880
+ header_params = opts[:header_params] || {}
881
+ # HTTP header 'Accept' (if needed)
882
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
883
+
884
+ # form parameters
885
+ form_params = opts[:form_params] || {}
886
+
887
+ # http body (model)
888
+ post_body = opts[:debug_body]
889
+
890
+ # return_type
891
+ return_type = opts[:debug_return_type] || 'Array<GroupResponse>'
892
+
893
+ # auth_names
894
+ auth_names = opts[:debug_auth_names] || ['access-token']
895
+
896
+ new_options = opts.merge(
897
+ :operation => :"Class20230301Api.official_groups20230301",
898
+ :header_params => header_params,
899
+ :query_params => query_params,
900
+ :form_params => form_params,
901
+ :body => post_body,
902
+ :auth_names => auth_names,
903
+ :return_type => return_type
904
+ )
905
+
906
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
907
+ if @api_client.config.debugging
908
+ @api_client.config.logger.debug "API called: Class20230301Api#official_groups20230301\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
909
+ end
910
+ return data, status_code, headers
911
+ end
912
+
913
+ # Time off balances
914
+ # Retrieve all time off balances.
915
+ # @param [Hash] opts the optional parameters
916
+ # @return [Array<TimeOffBalanceResponse>]
917
+ def official_time_off_balances20230301(opts = {})
918
+ data, _status_code, _headers = official_time_off_balances20230301_with_http_info(opts)
919
+ data
920
+ end
921
+
922
+ # Time off balances
923
+ # Retrieve all time off balances.
924
+ # @param [Hash] opts the optional parameters
925
+ # @return [Array<(Array<TimeOffBalanceResponse>, Integer, Hash)>] Array<TimeOffBalanceResponse> data, response status code and response headers
926
+ def official_time_off_balances20230301_with_http_info(opts = {})
927
+ if @api_client.config.debugging
928
+ @api_client.config.logger.debug 'Calling API: Class20230301Api.official_time_off_balances20230301 ...'
929
+ end
930
+ # resource path
931
+ local_var_path = '/2023-03-01/official/time-off-balances'
932
+
933
+ # query parameters
934
+ query_params = opts[:query_params] || {}
935
+
936
+ # header parameters
937
+ header_params = opts[:header_params] || {}
938
+ # HTTP header 'Accept' (if needed)
939
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
940
+
941
+ # form parameters
942
+ form_params = opts[:form_params] || {}
943
+
944
+ # http body (model)
945
+ post_body = opts[:debug_body]
946
+
947
+ # return_type
948
+ return_type = opts[:debug_return_type] || 'Array<TimeOffBalanceResponse>'
949
+
950
+ # auth_names
951
+ auth_names = opts[:debug_auth_names] || ['access-token']
952
+
953
+ new_options = opts.merge(
954
+ :operation => :"Class20230301Api.official_time_off_balances20230301",
955
+ :header_params => header_params,
956
+ :query_params => query_params,
957
+ :form_params => form_params,
958
+ :body => post_body,
959
+ :auth_names => auth_names,
960
+ :return_type => return_type
961
+ )
962
+
963
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
964
+ if @api_client.config.debugging
965
+ @api_client.config.logger.debug "API called: Class20230301Api#official_time_off_balances20230301\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
966
+ end
967
+ return data, status_code, headers
968
+ end
969
+
970
+ # Time off entries
971
+ # Retrieve time off / absence entries
972
+ # @param [Hash] opts the optional parameters
973
+ # @return [Array<TimeOffEntryResponse>]
974
+ def official_time_off_entries20230301(opts = {})
975
+ data, _status_code, _headers = official_time_off_entries20230301_with_http_info(opts)
976
+ data
977
+ end
978
+
979
+ # Time off entries
980
+ # Retrieve time off / absence entries
981
+ # @param [Hash] opts the optional parameters
982
+ # @return [Array<(Array<TimeOffEntryResponse>, Integer, Hash)>] Array<TimeOffEntryResponse> data, response status code and response headers
983
+ def official_time_off_entries20230301_with_http_info(opts = {})
984
+ if @api_client.config.debugging
985
+ @api_client.config.logger.debug 'Calling API: Class20230301Api.official_time_off_entries20230301 ...'
986
+ end
987
+ # resource path
988
+ local_var_path = '/2023-03-01/official/time-off-entries'
989
+
990
+ # query parameters
991
+ query_params = opts[:query_params] || {}
992
+
993
+ # header parameters
994
+ header_params = opts[:header_params] || {}
995
+ # HTTP header 'Accept' (if needed)
996
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
997
+
998
+ # form parameters
999
+ form_params = opts[:form_params] || {}
1000
+
1001
+ # http body (model)
1002
+ post_body = opts[:debug_body]
1003
+
1004
+ # return_type
1005
+ return_type = opts[:debug_return_type] || 'Array<TimeOffEntryResponse>'
1006
+
1007
+ # auth_names
1008
+ auth_names = opts[:debug_auth_names] || ['access-token']
1009
+
1010
+ new_options = opts.merge(
1011
+ :operation => :"Class20230301Api.official_time_off_entries20230301",
1012
+ :header_params => header_params,
1013
+ :query_params => query_params,
1014
+ :form_params => form_params,
1015
+ :body => post_body,
1016
+ :auth_names => auth_names,
1017
+ :return_type => return_type
1018
+ )
1019
+
1020
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1021
+ if @api_client.config.debugging
1022
+ @api_client.config.logger.debug "API called: Class20230301Api#official_time_off_entries20230301\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1023
+ end
1024
+ return data, status_code, headers
1025
+ end
1026
+
1027
+ # Timesheets
1028
+ # Retrieve Timesheets
1029
+ # @param [Hash] opts the optional parameters
1030
+ # @return [Array<TimesheetResponse>]
1031
+ def official_timesheets20230301(opts = {})
1032
+ data, _status_code, _headers = official_timesheets20230301_with_http_info(opts)
1033
+ data
1034
+ end
1035
+
1036
+ # Timesheets
1037
+ # Retrieve Timesheets
1038
+ # @param [Hash] opts the optional parameters
1039
+ # @return [Array<(Array<TimesheetResponse>, Integer, Hash)>] Array<TimesheetResponse> data, response status code and response headers
1040
+ def official_timesheets20230301_with_http_info(opts = {})
1041
+ if @api_client.config.debugging
1042
+ @api_client.config.logger.debug 'Calling API: Class20230301Api.official_timesheets20230301 ...'
1043
+ end
1044
+ # resource path
1045
+ local_var_path = '/2023-03-01/official/timesheets'
1046
+
1047
+ # query parameters
1048
+ query_params = opts[:query_params] || {}
1049
+
1050
+ # header parameters
1051
+ header_params = opts[:header_params] || {}
1052
+ # HTTP header 'Accept' (if needed)
1053
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1054
+
1055
+ # form parameters
1056
+ form_params = opts[:form_params] || {}
1057
+
1058
+ # http body (model)
1059
+ post_body = opts[:debug_body]
1060
+
1061
+ # return_type
1062
+ return_type = opts[:debug_return_type] || 'Array<TimesheetResponse>'
1063
+
1064
+ # auth_names
1065
+ auth_names = opts[:debug_auth_names] || ['access-token']
1066
+
1067
+ new_options = opts.merge(
1068
+ :operation => :"Class20230301Api.official_timesheets20230301",
1069
+ :header_params => header_params,
1070
+ :query_params => query_params,
1071
+ :form_params => form_params,
1072
+ :body => post_body,
1073
+ :auth_names => auth_names,
1074
+ :return_type => return_type
1075
+ )
1076
+
1077
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1078
+ if @api_client.config.debugging
1079
+ @api_client.config.logger.debug "API called: Class20230301Api#official_timesheets20230301\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1080
+ end
1081
+ return data, status_code, headers
1082
+ end
1083
+
1084
+ # Work locations
1085
+ # The Location object is used to represent an address that can be associated with an employee
1086
+ # @param [Hash] opts the optional parameters
1087
+ # @return [Array<LocationResponse>]
1088
+ def official_work_locations20230301(opts = {})
1089
+ data, _status_code, _headers = official_work_locations20230301_with_http_info(opts)
1090
+ data
1091
+ end
1092
+
1093
+ # Work locations
1094
+ # The Location object is used to represent an address that can be associated with an employee
1095
+ # @param [Hash] opts the optional parameters
1096
+ # @return [Array<(Array<LocationResponse>, Integer, Hash)>] Array<LocationResponse> data, response status code and response headers
1097
+ def official_work_locations20230301_with_http_info(opts = {})
1098
+ if @api_client.config.debugging
1099
+ @api_client.config.logger.debug 'Calling API: Class20230301Api.official_work_locations20230301 ...'
1100
+ end
1101
+ # resource path
1102
+ local_var_path = '/2023-03-01/official/work-locations'
1103
+
1104
+ # query parameters
1105
+ query_params = opts[:query_params] || {}
1106
+
1107
+ # header parameters
1108
+ header_params = opts[:header_params] || {}
1109
+ # HTTP header 'Accept' (if needed)
1110
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1111
+
1112
+ # form parameters
1113
+ form_params = opts[:form_params] || {}
1114
+
1115
+ # http body (model)
1116
+ post_body = opts[:debug_body]
1117
+
1118
+ # return_type
1119
+ return_type = opts[:debug_return_type] || 'Array<LocationResponse>'
1120
+
1121
+ # auth_names
1122
+ auth_names = opts[:debug_auth_names] || ['access-token']
1123
+
1124
+ new_options = opts.merge(
1125
+ :operation => :"Class20230301Api.official_work_locations20230301",
1126
+ :header_params => header_params,
1127
+ :query_params => query_params,
1128
+ :form_params => form_params,
1129
+ :body => post_body,
1130
+ :auth_names => auth_names,
1131
+ :return_type => return_type
1132
+ )
1133
+
1134
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1135
+ if @api_client.config.debugging
1136
+ @api_client.config.logger.debug "API called: Class20230301Api#official_work_locations20230301\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1137
+ end
1138
+ return data, status_code, headers
1139
+ end
1140
+
1141
+ # Identity
1142
+ # List information of the user for the respective account
1143
+ # @param [Hash] opts the optional parameters
1144
+ # @return [IdentityResponse]
1145
+ def officialdentity20230301(opts = {})
1146
+ data, _status_code, _headers = officialdentity20230301_with_http_info(opts)
1147
+ data
1148
+ end
1149
+
1150
+ # Identity
1151
+ # List information of the user for the respective account
1152
+ # @param [Hash] opts the optional parameters
1153
+ # @return [Array<(IdentityResponse, Integer, Hash)>] IdentityResponse data, response status code and response headers
1154
+ def officialdentity20230301_with_http_info(opts = {})
1155
+ if @api_client.config.debugging
1156
+ @api_client.config.logger.debug 'Calling API: Class20230301Api.officialdentity20230301 ...'
1157
+ end
1158
+ # resource path
1159
+ local_var_path = '/2023-03-01/official/identity'
1160
+
1161
+ # query parameters
1162
+ query_params = opts[:query_params] || {}
1163
+
1164
+ # header parameters
1165
+ header_params = opts[:header_params] || {}
1166
+ # HTTP header 'Accept' (if needed)
1167
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1168
+
1169
+ # form parameters
1170
+ form_params = opts[:form_params] || {}
1171
+
1172
+ # http body (model)
1173
+ post_body = opts[:debug_body]
1174
+
1175
+ # return_type
1176
+ return_type = opts[:debug_return_type] || 'IdentityResponse'
1177
+
1178
+ # auth_names
1179
+ auth_names = opts[:debug_auth_names] || ['access-token']
1180
+
1181
+ new_options = opts.merge(
1182
+ :operation => :"Class20230301Api.officialdentity20230301",
1183
+ :header_params => header_params,
1184
+ :query_params => query_params,
1185
+ :form_params => form_params,
1186
+ :body => post_body,
1187
+ :auth_names => auth_names,
1188
+ :return_type => return_type
1189
+ )
1190
+
1191
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1192
+ if @api_client.config.debugging
1193
+ @api_client.config.logger.debug "API called: Class20230301Api#officialdentity20230301\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1194
+ end
1195
+ return data, status_code, headers
1196
+ end
1197
+ end
1198
+ end