kombo 1.2.8 → 1.2.10

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 (213) hide show
  1. checksums.yaml +4 -4
  2. data/lib/kombo/ats.rb +326 -0
  3. data/lib/kombo/connect.rb +2 -1
  4. data/lib/kombo/general.rb +26 -6
  5. data/lib/kombo/hris.rb +322 -2
  6. data/lib/kombo/models/operations/getatsattachments_request.rb +74 -0
  7. data/lib/kombo/models/operations/getatsattachments_request.rbi +31 -0
  8. data/lib/kombo/models/operations/getatsattachments_response.rb +56 -0
  9. data/lib/kombo/models/operations/getatsattachments_response.rbi +19 -0
  10. data/lib/kombo/models/operations/getatsscorecards_request.rb +83 -0
  11. data/lib/kombo/models/operations/getatsscorecards_request.rbi +31 -0
  12. data/lib/kombo/models/operations/getatsscorecards_response.rb +56 -0
  13. data/lib/kombo/models/operations/getatsscorecards_response.rbi +19 -0
  14. data/lib/kombo/models/operations/gethrispayruns_request.rb +70 -0
  15. data/lib/kombo/models/operations/gethrispayruns_request.rbi +29 -0
  16. data/lib/kombo/models/operations/gethrispayruns_response.rb +56 -0
  17. data/lib/kombo/models/operations/gethrispayruns_response.rbi +19 -0
  18. data/lib/kombo/models/operations/gethrispayslips_request.rb +87 -0
  19. data/lib/kombo/models/operations/gethrispayslips_request.rbi +33 -0
  20. data/lib/kombo/models/operations/gethrispayslips_response.rb +56 -0
  21. data/lib/kombo/models/operations/gethrispayslips_response.rbi +19 -0
  22. data/lib/kombo/models/operations.rb +8 -0
  23. data/lib/kombo/models/shared/amount.rb +36 -0
  24. data/lib/kombo/models/shared/amount.rbi +15 -0
  25. data/lib/kombo/models/shared/amount_ytd.rb +36 -0
  26. data/lib/kombo/models/shared/amount_ytd.rbi +15 -0
  27. data/lib/kombo/models/shared/change.rb +19 -0
  28. data/lib/kombo/models/shared/change.rbi +11 -0
  29. data/lib/kombo/models/shared/content_ref.rb +43 -0
  30. data/lib/kombo/models/shared/content_ref.rbi +17 -0
  31. data/lib/kombo/models/shared/domestic_bank_routing.rb +1 -1
  32. data/lib/kombo/models/shared/domestic_bank_routing_type.rb +1 -0
  33. data/lib/kombo/models/shared/employee.rb +57 -0
  34. data/lib/kombo/models/shared/employee.rbi +25 -0
  35. data/lib/kombo/models/shared/format_multiselect.rb +2 -2
  36. data/lib/kombo/models/shared/format_singleselect.rb +2 -2
  37. data/lib/kombo/models/shared/getatsattachmentspositiveresponse.rb +39 -0
  38. data/lib/kombo/models/shared/getatsattachmentspositiveresponse.rbi +15 -0
  39. data/lib/kombo/models/shared/getatsattachmentspositiveresponse_data.rb +36 -0
  40. data/lib/kombo/models/shared/getatsattachmentspositiveresponse_data.rbi +15 -0
  41. data/lib/kombo/models/shared/getatsattachmentspositiveresponse_result.rb +76 -0
  42. data/lib/kombo/models/shared/getatsattachmentspositiveresponse_result.rbi +33 -0
  43. data/lib/kombo/models/shared/getatsattachmentspositiveresponse_type.rb +20 -0
  44. data/lib/kombo/models/shared/getatsattachmentspositiveresponse_type.rbi +11 -0
  45. data/lib/kombo/models/shared/{option_1.rb → getatsjobspositiveresponse_option_1.rb} +1 -1
  46. data/lib/kombo/models/shared/{option_1.rbi → getatsjobspositiveresponse_option_1.rbi} +2 -2
  47. data/lib/kombo/models/shared/{option_2.rb → getatsjobspositiveresponse_option_2.rb} +1 -1
  48. data/lib/kombo/models/shared/{option_2.rbi → getatsjobspositiveresponse_option_2.rbi} +2 -2
  49. data/lib/kombo/models/shared/{author.rb → getatsnotespositiveresponse_author.rb} +1 -1
  50. data/lib/kombo/models/shared/{author.rbi → getatsnotespositiveresponse_author.rbi} +2 -2
  51. data/lib/kombo/models/shared/getatsnotespositiveresponse_result.rb +2 -2
  52. data/lib/kombo/models/shared/getatsscorecardspositiveresponse.rb +39 -0
  53. data/lib/kombo/models/shared/getatsscorecardspositiveresponse.rbi +15 -0
  54. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_answer_1.rb +36 -0
  55. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_answer_1.rbi +15 -0
  56. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_answer_2.rb +36 -0
  57. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_answer_2.rbi +15 -0
  58. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_author.rb +48 -0
  59. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_author.rbi +21 -0
  60. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_data.rb +36 -0
  61. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_data.rbi +15 -0
  62. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_option_1.rb +36 -0
  63. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_option_1.rbi +15 -0
  64. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_option_2.rb +36 -0
  65. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_option_2.rbi +15 -0
  66. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_result.rb +80 -0
  67. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_result.rbi +35 -0
  68. data/lib/kombo/models/shared/gethrisgroupspositiveresponse_result.rb +6 -2
  69. data/lib/kombo/models/shared/gethrisgroupspositiveresponse_result.rbi +2 -0
  70. data/lib/kombo/models/shared/gethrislegalentitiespositiveresponse_result.rb +6 -2
  71. data/lib/kombo/models/shared/gethrislegalentitiespositiveresponse_result.rbi +2 -0
  72. data/lib/kombo/models/shared/gethrislocationspositiveresponse_result.rb +6 -2
  73. data/lib/kombo/models/shared/gethrislocationspositiveresponse_result.rbi +2 -0
  74. data/lib/kombo/models/shared/gethrispayrunspositiveresponse.rb +39 -0
  75. data/lib/kombo/models/shared/gethrispayrunspositiveresponse.rbi +15 -0
  76. data/lib/kombo/models/shared/gethrispayrunspositiveresponse_data.rb +36 -0
  77. data/lib/kombo/models/shared/gethrispayrunspositiveresponse_data.rbi +15 -0
  78. data/lib/kombo/models/shared/gethrispayrunspositiveresponse_gross_pay.rb +36 -0
  79. data/lib/kombo/models/shared/gethrispayrunspositiveresponse_gross_pay.rbi +15 -0
  80. data/lib/kombo/models/shared/gethrispayrunspositiveresponse_net_pay.rb +36 -0
  81. data/lib/kombo/models/shared/gethrispayrunspositiveresponse_net_pay.rbi +15 -0
  82. data/lib/kombo/models/shared/gethrispayrunspositiveresponse_paid_amount.rb +36 -0
  83. data/lib/kombo/models/shared/gethrispayrunspositiveresponse_paid_amount.rbi +15 -0
  84. data/lib/kombo/models/shared/gethrispayrunspositiveresponse_result.rb +62 -0
  85. data/lib/kombo/models/shared/gethrispayrunspositiveresponse_result.rbi +27 -0
  86. data/lib/kombo/models/shared/gethrispayrunspositiveresponse_totals.rb +40 -0
  87. data/lib/kombo/models/shared/gethrispayrunspositiveresponse_totals.rbi +17 -0
  88. data/lib/kombo/models/shared/gethrispayslipspositiveresponse.rb +39 -0
  89. data/lib/kombo/models/shared/gethrispayslipspositiveresponse.rbi +15 -0
  90. data/lib/kombo/models/shared/gethrispayslipspositiveresponse_data.rb +36 -0
  91. data/lib/kombo/models/shared/gethrispayslipspositiveresponse_data.rbi +15 -0
  92. data/lib/kombo/models/shared/gethrispayslipspositiveresponse_gross_pay.rb +36 -0
  93. data/lib/kombo/models/shared/gethrispayslipspositiveresponse_gross_pay.rbi +15 -0
  94. data/lib/kombo/models/shared/gethrispayslipspositiveresponse_net_pay.rb +36 -0
  95. data/lib/kombo/models/shared/gethrispayslipspositiveresponse_net_pay.rbi +15 -0
  96. data/lib/kombo/models/shared/gethrispayslipspositiveresponse_paid_amount.rb +36 -0
  97. data/lib/kombo/models/shared/gethrispayslipspositiveresponse_paid_amount.rbi +15 -0
  98. data/lib/kombo/models/shared/gethrispayslipspositiveresponse_result.rb +66 -0
  99. data/lib/kombo/models/shared/gethrispayslipspositiveresponse_result.rbi +29 -0
  100. data/lib/kombo/models/shared/gethrispayslipspositiveresponse_totals.rb +52 -0
  101. data/lib/kombo/models/shared/gethrispayslipspositiveresponse_totals.rbi +23 -0
  102. data/lib/kombo/models/shared/gross_pay_ytd.rb +36 -0
  103. data/lib/kombo/models/shared/gross_pay_ytd.rbi +15 -0
  104. data/lib/kombo/models/shared/integration.rb +44 -0
  105. data/lib/kombo/models/shared/integration.rbi +19 -0
  106. data/lib/kombo/models/shared/integration_tool.rb +9 -1
  107. data/lib/kombo/models/shared/issue.rb +56 -0
  108. data/lib/kombo/models/shared/issue.rbi +25 -0
  109. data/lib/kombo/models/shared/issuestatuschangedwebhookpayload.rb +40 -0
  110. data/lib/kombo/models/shared/issuestatuschangedwebhookpayload.rbi +17 -0
  111. data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_category.rb +21 -0
  112. data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_category.rbi +11 -0
  113. data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_data.rb +40 -0
  114. data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_data.rbi +17 -0
  115. data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_end_user.rb +40 -0
  116. data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_end_user.rbi +17 -0
  117. data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_status.rb +19 -0
  118. data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_status.rbi +11 -0
  119. data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_type.rb +18 -0
  120. data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_type.rbi +11 -0
  121. data/lib/kombo/models/shared/line_item.rb +56 -0
  122. data/lib/kombo/models/shared/line_item.rbi +25 -0
  123. data/lib/kombo/models/shared/name.rb +6 -0
  124. data/lib/kombo/models/shared/net_pay_ytd.rb +36 -0
  125. data/lib/kombo/models/shared/net_pay_ytd.rbi +15 -0
  126. data/lib/kombo/models/shared/paid_amount_ytd.rb +36 -0
  127. data/lib/kombo/models/shared/paid_amount_ytd.rbi +15 -0
  128. data/lib/kombo/models/shared/pay_code.rb +36 -0
  129. data/lib/kombo/models/shared/pay_code.rbi +15 -0
  130. data/lib/kombo/models/shared/pay_run.rb +48 -0
  131. data/lib/kombo/models/shared/pay_run.rbi +21 -0
  132. data/lib/kombo/models/shared/postatsapplicationsapplicationidnotesrequestbody.rb +6 -2
  133. data/lib/kombo/models/shared/postatsapplicationsapplicationidnotesrequestbody.rbi +2 -0
  134. data/lib/kombo/models/shared/postatsapplicationsapplicationidresultlinksrequestbody_remote_fields.rb +6 -2
  135. data/lib/kombo/models/shared/postatsapplicationsapplicationidresultlinksrequestbody_remote_fields.rbi +2 -0
  136. data/lib/kombo/models/shared/postatsapplicationsapplicationidresultlinksrequestbody_traffit.rb +32 -0
  137. data/lib/kombo/models/shared/postatsapplicationsapplicationidresultlinksrequestbody_traffit.rbi +13 -0
  138. data/lib/kombo/models/shared/postatscandidatescandidateidresultlinksrequestbody_remote_fields.rb +6 -2
  139. data/lib/kombo/models/shared/postatscandidatescandidateidresultlinksrequestbody_remote_fields.rbi +2 -0
  140. data/lib/kombo/models/shared/postatscandidatescandidateidresultlinksrequestbody_traffit.rb +32 -0
  141. data/lib/kombo/models/shared/postatscandidatescandidateidresultlinksrequestbody_traffit.rbi +13 -0
  142. data/lib/kombo/models/shared/postatscandidatesrequestbody_afas.rb +32 -0
  143. data/lib/kombo/models/shared/{afas.rbi → postatscandidatesrequestbody_afas.rbi} +2 -2
  144. data/lib/kombo/models/shared/postatscandidatesrequestbody_avature.rb +6 -2
  145. data/lib/kombo/models/shared/postatscandidatesrequestbody_avature.rbi +2 -0
  146. data/lib/kombo/models/shared/postatscandidatesrequestbody_custom_field.rb +48 -0
  147. data/lib/kombo/models/shared/postatscandidatesrequestbody_custom_field.rbi +21 -0
  148. data/lib/kombo/models/shared/postatscandidatesrequestbody_emplypeople.rb +32 -0
  149. data/lib/kombo/models/shared/postatscandidatesrequestbody_emplypeople.rbi +13 -0
  150. data/lib/kombo/models/shared/postatscandidatesrequestbody_fountain.rb +44 -0
  151. data/lib/kombo/models/shared/postatscandidatesrequestbody_fountain.rbi +19 -0
  152. data/lib/kombo/models/shared/postatscandidatesrequestbody_icims.rb +32 -0
  153. data/lib/kombo/models/shared/postatscandidatesrequestbody_icims.rbi +13 -0
  154. data/lib/kombo/models/shared/postatscandidatesrequestbody_recruitcrm.rb +32 -0
  155. data/lib/kombo/models/shared/postatscandidatesrequestbody_recruitcrm.rbi +13 -0
  156. data/lib/kombo/models/shared/postatscandidatesrequestbody_remote_fields.rb +22 -2
  157. data/lib/kombo/models/shared/postatscandidatesrequestbody_remote_fields.rbi +10 -0
  158. data/lib/kombo/models/shared/postatscandidatesrequestbody_talentsoft.rb +6 -2
  159. data/lib/kombo/models/shared/postatscandidatesrequestbody_talentsoft.rbi +2 -0
  160. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_afas.rb +32 -0
  161. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_afas.rbi +13 -0
  162. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_avature.rb +6 -2
  163. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_avature.rbi +2 -0
  164. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_custom_field.rb +48 -0
  165. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_custom_field.rbi +21 -0
  166. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_emplypeople.rb +32 -0
  167. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_emplypeople.rbi +13 -0
  168. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_fountain.rb +44 -0
  169. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_fountain.rbi +19 -0
  170. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_icims.rb +32 -0
  171. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_icims.rbi +13 -0
  172. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_recruitcrm.rb +32 -0
  173. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_recruitcrm.rbi +13 -0
  174. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_remote_fields.rb +22 -2
  175. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_remote_fields.rbi +10 -0
  176. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_talentsoft.rb +6 -2
  177. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_talentsoft.rbi +2 -0
  178. data/lib/kombo/models/shared/postconnectcreatelinkpositiveresponse_data.rb +6 -2
  179. data/lib/kombo/models/shared/postconnectcreatelinkpositiveresponse_data.rbi +2 -0
  180. data/lib/kombo/models/shared/postconnectcreatelinkrequestbody.rb +6 -2
  181. data/lib/kombo/models/shared/postconnectcreatelinkrequestbody.rbi +2 -0
  182. data/lib/kombo/models/shared/{afas.rb → posthrisemployeesemployeeiddocumentsrequestbody_afas.rb} +1 -1
  183. data/lib/kombo/models/shared/posthrisemployeesemployeeiddocumentsrequestbody_afas.rbi +13 -0
  184. data/lib/kombo/models/shared/posthrisemployeesemployeeiddocumentsrequestbody_remote_fields.rb +2 -2
  185. data/lib/kombo/models/shared/putatsapplicationsapplicationidstagerequestbody_lever.rb +32 -0
  186. data/lib/kombo/models/shared/putatsapplicationsapplicationidstagerequestbody_lever.rbi +13 -0
  187. data/lib/kombo/models/shared/putatsapplicationsapplicationidstagerequestbody_remote_fields.rb +6 -2
  188. data/lib/kombo/models/shared/putatsapplicationsapplicationidstagerequestbody_remote_fields.rbi +2 -0
  189. data/lib/kombo/models/shared/response.rb +27 -0
  190. data/lib/kombo/models/shared/response.rbi +11 -0
  191. data/lib/kombo/models/shared/result_boolean.rb +55 -0
  192. data/lib/kombo/models/shared/result_boolean.rbi +23 -0
  193. data/lib/kombo/models/shared/result_date.rb +55 -0
  194. data/lib/kombo/models/shared/result_date.rbi +23 -0
  195. data/lib/kombo/models/shared/result_multiselect.rb +59 -0
  196. data/lib/kombo/models/shared/result_multiselect.rbi +25 -0
  197. data/lib/kombo/models/shared/result_number.rb +55 -0
  198. data/lib/kombo/models/shared/result_number.rbi +23 -0
  199. data/lib/kombo/models/shared/result_singleselect.rb +59 -0
  200. data/lib/kombo/models/shared/result_singleselect.rbi +25 -0
  201. data/lib/kombo/models/shared/result_text.rb +55 -0
  202. data/lib/kombo/models/shared/result_text.rbi +23 -0
  203. data/lib/kombo/models/shared/work_location.rb +6 -2
  204. data/lib/kombo/models/shared/work_location.rbi +2 -0
  205. data/lib/kombo/models/shared.rb +71 -4
  206. data/lib/kombo/models/webhooks/webhookissuestatuschangedwebhookpayload_request.rb +36 -0
  207. data/lib/kombo/models/webhooks/webhookissuestatuschangedwebhookpayload_request.rbi +15 -0
  208. data/lib/kombo/models/webhooks/webhookissuestatuschangedwebhookpayload_response.rb +40 -0
  209. data/lib/kombo/models/webhooks/webhookissuestatuschangedwebhookpayload_response.rbi +17 -0
  210. data/lib/kombo/models/webhooks.rb +2 -0
  211. data/lib/kombo/sdkconfiguration.rb +5 -3
  212. data/lib/kombo/utils/utils.rb +6 -2
  213. metadata +164 -10
@@ -0,0 +1,32 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Kombo
8
+ module Models
9
+ module Shared
10
+ # Fields specific to iCIMS.
11
+ class PostAtsJobsJobIdApplicationsRequestBodyIcims
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # Fields that we will pass through to the iCIMS applicant workflow when it is created. For example `sourcechannel` or custom `fieldNNNN` IDs.
16
+ field :application, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::Object)), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('application') } }
17
+
18
+ sig { params(application: T.nilable(T::Hash[Symbol, ::Object])).void }
19
+ def initialize(application: nil)
20
+ @application = application
21
+ end
22
+
23
+ sig { params(other: T.untyped).returns(T::Boolean) }
24
+ def ==(other)
25
+ return false unless other.is_a? self.class
26
+ return false unless @application == other.application
27
+ true
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,13 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Kombo::Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyIcims
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyIcims
11
+ def application(); end
12
+ def application=(str_); end
13
+ end
@@ -0,0 +1,32 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Kombo
8
+ module Models
9
+ module Shared
10
+ # Fields specific to Recruit CRM.
11
+ class PostAtsJobsJobIdApplicationsRequestBodyRecruitcrm
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # Candidate custom fields passed through to Recruit CRM's `custom_fields` array. A child field also needs its parent field in this array. See https://docs.recruitcrm.io/docs/rcrm-api-reference/ba451e2a3bd63-creates-a-new-candidate.
16
+ field :custom_fields, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyCustomField)), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('custom_fields') } }
17
+
18
+ sig { params(custom_fields: T.nilable(T::Array[Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyCustomField])).void }
19
+ def initialize(custom_fields: nil)
20
+ @custom_fields = custom_fields
21
+ end
22
+
23
+ sig { params(other: T.untyped).returns(T::Boolean) }
24
+ def ==(other)
25
+ return false unless other.is_a? self.class
26
+ return false unless @custom_fields == other.custom_fields
27
+ true
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,13 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Kombo::Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyRecruitcrm
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyRecruitcrm
11
+ def custom_fields(); end
12
+ def custom_fields=(str_); end
13
+ end
@@ -60,9 +60,19 @@ module Kombo
60
60
  field :pinpoint, Crystalline::Nilable.new(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyPinpoint), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('pinpoint') } }
61
61
  # Fields specific to Coveto REST.
62
62
  field :covetorest, Crystalline::Nilable.new(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyCovetorest), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('covetorest') } }
63
+ # Fields specific to AFAS.
64
+ field :afas, Crystalline::Nilable.new(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyAfas), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('afas') } }
65
+ # Consent fields passed through to Fountain when creating an applicant. See https://developer.fountain.com/reference/post_v2-applicants.
66
+ field :fountain, Crystalline::Nilable.new(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyFountain), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('fountain') } }
67
+ # Fields specific to Recruit CRM.
68
+ field :recruitcrm, Crystalline::Nilable.new(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyRecruitcrm), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('recruitcrm') } }
69
+ # Fields specific to iCIMS.
70
+ field :icims, Crystalline::Nilable.new(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyIcims), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('icims') } }
71
+ # Fields specific to Emply People.
72
+ field :emplypeople, Crystalline::Nilable.new(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyEmplypeople), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('emplypeople') } }
63
73
 
64
- sig { params(successfactors: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodySuccessfactors), personio: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyPersonio), talentsoft: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyTalentsoft), teamtailor: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyTeamtailor), greenhouse: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyGreenhouse), greenhousev3: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyGreenhousev3), lever: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyLever), workable: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyWorkable), workday: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyWorkday), zohorecruit: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyZohorecruit), bullhorn: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyBullhorn), smartrecruiters: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodySmartrecruiters), talentadore: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyTalentadore), guidecom: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyGuidecom), dvinci: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyDvinci), hrworks: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyHrworks), jobylon: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyJobylon), avature: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyAvature), recruitee: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyRecruitee), rexx: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyRexx), umantis: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyUmantis), piloga: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyPiloga), pinpoint: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyPinpoint), covetorest: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyCovetorest)).void }
65
- def initialize(successfactors: nil, personio: nil, talentsoft: nil, teamtailor: nil, greenhouse: nil, greenhousev3: nil, lever: nil, workable: nil, workday: nil, zohorecruit: nil, bullhorn: nil, smartrecruiters: nil, talentadore: nil, guidecom: nil, dvinci: nil, hrworks: nil, jobylon: nil, avature: nil, recruitee: nil, rexx: nil, umantis: nil, piloga: nil, pinpoint: nil, covetorest: nil)
74
+ sig { params(successfactors: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodySuccessfactors), personio: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyPersonio), talentsoft: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyTalentsoft), teamtailor: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyTeamtailor), greenhouse: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyGreenhouse), greenhousev3: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyGreenhousev3), lever: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyLever), workable: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyWorkable), workday: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyWorkday), zohorecruit: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyZohorecruit), bullhorn: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyBullhorn), smartrecruiters: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodySmartrecruiters), talentadore: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyTalentadore), guidecom: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyGuidecom), dvinci: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyDvinci), hrworks: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyHrworks), jobylon: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyJobylon), avature: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyAvature), recruitee: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyRecruitee), rexx: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyRexx), umantis: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyUmantis), piloga: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyPiloga), pinpoint: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyPinpoint), covetorest: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyCovetorest), afas: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyAfas), fountain: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyFountain), recruitcrm: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyRecruitcrm), icims: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyIcims), emplypeople: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyEmplypeople)).void }
75
+ def initialize(successfactors: nil, personio: nil, talentsoft: nil, teamtailor: nil, greenhouse: nil, greenhousev3: nil, lever: nil, workable: nil, workday: nil, zohorecruit: nil, bullhorn: nil, smartrecruiters: nil, talentadore: nil, guidecom: nil, dvinci: nil, hrworks: nil, jobylon: nil, avature: nil, recruitee: nil, rexx: nil, umantis: nil, piloga: nil, pinpoint: nil, covetorest: nil, afas: nil, fountain: nil, recruitcrm: nil, icims: nil, emplypeople: nil)
66
76
  @successfactors = successfactors
67
77
  @personio = personio
68
78
  @talentsoft = talentsoft
@@ -87,6 +97,11 @@ module Kombo
87
97
  @piloga = piloga
88
98
  @pinpoint = pinpoint
89
99
  @covetorest = covetorest
100
+ @afas = afas
101
+ @fountain = fountain
102
+ @recruitcrm = recruitcrm
103
+ @icims = icims
104
+ @emplypeople = emplypeople
90
105
  end
91
106
 
92
107
  sig { params(other: T.untyped).returns(T::Boolean) }
@@ -116,6 +131,11 @@ module Kombo
116
131
  return false unless @piloga == other.piloga
117
132
  return false unless @pinpoint == other.pinpoint
118
133
  return false unless @covetorest == other.covetorest
134
+ return false unless @afas == other.afas
135
+ return false unless @fountain == other.fountain
136
+ return false unless @recruitcrm == other.recruitcrm
137
+ return false unless @icims == other.icims
138
+ return false unless @emplypeople == other.emplypeople
119
139
  true
120
140
  end
121
141
  end
@@ -56,4 +56,14 @@ class Kombo::Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyRemoteFields
56
56
  def pinpoint=(str_); end
57
57
  def covetorest(); end
58
58
  def covetorest=(str_); end
59
+ def afas(); end
60
+ def afas=(str_); end
61
+ def fountain(); end
62
+ def fountain=(str_); end
63
+ def recruitcrm(); end
64
+ def recruitcrm=(str_); end
65
+ def icims(); end
66
+ def icims=(str_); end
67
+ def emplypeople(); end
68
+ def emplypeople=(str_); end
59
69
  end
@@ -16,11 +16,14 @@ module Kombo
16
16
  field :applicant, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::Object)), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('applicant') } }
17
17
  # Fields that we will pass through to TalentSoft's `application` object.
18
18
  field :application, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::Object)), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('application') } }
19
+ # Fields that we will pass through to TalentSoft's top-level `customFields` object when creating applications without an account. For account-based application creation, pass custom fields in `applicant.customFields` instead.
20
+ field :custom_fields, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::Object)), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('customFields') } }
19
21
 
20
- sig { params(applicant: T.nilable(T::Hash[Symbol, ::Object]), application: T.nilable(T::Hash[Symbol, ::Object])).void }
21
- def initialize(applicant: nil, application: nil)
22
+ sig { params(applicant: T.nilable(T::Hash[Symbol, ::Object]), application: T.nilable(T::Hash[Symbol, ::Object]), custom_fields: T.nilable(T::Hash[Symbol, ::Object])).void }
23
+ def initialize(applicant: nil, application: nil, custom_fields: nil)
22
24
  @applicant = applicant
23
25
  @application = application
26
+ @custom_fields = custom_fields
24
27
  end
25
28
 
26
29
  sig { params(other: T.untyped).returns(T::Boolean) }
@@ -28,6 +31,7 @@ module Kombo
28
31
  return false unless other.is_a? self.class
29
32
  return false unless @applicant == other.applicant
30
33
  return false unless @application == other.application
34
+ return false unless @custom_fields == other.custom_fields
31
35
  true
32
36
  end
33
37
  end
@@ -12,4 +12,6 @@ class Kombo::Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyTalentsoft
12
12
  def applicant=(str_); end
13
13
  def application(); end
14
14
  def application=(str_); end
15
+ def custom_fields(); end
16
+ def custom_fields=(str_); end
15
17
  end
@@ -14,16 +14,20 @@ module Kombo
14
14
 
15
15
 
16
16
  field :link, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('link'), required: true } }
17
+ # The allowlist IPs for this integration. Present when `enable_static_ips` is `true`.
18
+ field :static_ips, Crystalline::Nilable.new(Crystalline::Array.new(::String)), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('static_ips') } }
17
19
 
18
- sig { params(link: ::String).void }
19
- def initialize(link:)
20
+ sig { params(link: ::String, static_ips: T.nilable(T::Array[::String])).void }
21
+ def initialize(link:, static_ips: nil)
20
22
  @link = link
23
+ @static_ips = static_ips
21
24
  end
22
25
 
23
26
  sig { params(other: T.untyped).returns(T::Boolean) }
24
27
  def ==(other)
25
28
  return false unless other.is_a? self.class
26
29
  return false unless @link == other.link
30
+ return false unless @static_ips == other.static_ips
27
31
  true
28
32
  end
29
33
  end
@@ -10,4 +10,6 @@ end
10
10
  class Kombo::Models::Shared::PostConnectCreateLinkPositiveResponseData
11
11
  def link(); end
12
12
  def link=(str_); end
13
+ def static_ips(); end
14
+ def static_ips=(str_); end
13
15
  end
@@ -30,6 +30,8 @@ module Kombo
30
30
  field :enable_filtering, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('enable_filtering') } }
31
31
  # Enable the [field mapping feature](https://docs.kombo.dev/hris/features/setup-flow/introduction#field-mapping) for this integration.
32
32
  field :enable_field_mapping, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('enable_field_mapping') } }
33
+ # Enable [Static IPs](https://docs.kombo.dev/hris/guides/static-ips) for this integration so all API calls originate from a fixed, allowlistable set of IPs.
34
+ field :enable_static_ips, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('enable_static_ips') } }
33
35
  # The type of link you want to create. `EMBEDDED` is for the [embedded flow](../guides/connect/embedded-flow) using the Kombo Connect SDK (these links are valid for 1 hour) and `MAGIC_LINK` is for [magic links](../guides/connect/magic-links) which you send out manually to customers (there are valid for 1 year).
34
36
  #
35
37
  # This defaults to `EMBEDDED`, which is our recommended method of implementing the connection flow for a seamless user experience.
@@ -37,8 +39,8 @@ module Kombo
37
39
  # Language of the connection flow UI.
38
40
  field :language, Crystalline::Nilable.new(Models::Shared::PostConnectCreateLinkRequestBodyLanguage), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('language'), 'decoder': ::Kombo::Utils.enum_from_string(Models::Shared::PostConnectCreateLinkRequestBodyLanguage, true) } }
39
41
 
40
- sig { params(end_user_email: ::String, end_user_organization_name: ::String, end_user_origin_id: T.nilable(::String), remote_environment: T.nilable(::String), integration_category: T.nilable(Models::Shared::PostConnectCreateLinkRequestBodyIntegrationCategory), integration_tool: T.nilable(Models::Shared::IntegrationTool), scope_config_id: T.nilable(::String), enable_filtering: T.nilable(T::Boolean), enable_field_mapping: T.nilable(T::Boolean), link_type: T.nilable(Models::Shared::PostConnectCreateLinkRequestBodyLinkType), language: T.nilable(Models::Shared::PostConnectCreateLinkRequestBodyLanguage)).void }
41
- def initialize(end_user_email:, end_user_organization_name:, end_user_origin_id: nil, remote_environment: nil, integration_category: Models::Shared::PostConnectCreateLinkRequestBodyIntegrationCategory::HRIS, integration_tool: nil, scope_config_id: nil, enable_filtering: false, enable_field_mapping: false, link_type: Models::Shared::PostConnectCreateLinkRequestBodyLinkType::EMBEDDED, language: Models::Shared::PostConnectCreateLinkRequestBodyLanguage::EN)
42
+ sig { params(end_user_email: ::String, end_user_organization_name: ::String, end_user_origin_id: T.nilable(::String), remote_environment: T.nilable(::String), integration_category: T.nilable(Models::Shared::PostConnectCreateLinkRequestBodyIntegrationCategory), integration_tool: T.nilable(Models::Shared::IntegrationTool), scope_config_id: T.nilable(::String), enable_filtering: T.nilable(T::Boolean), enable_field_mapping: T.nilable(T::Boolean), enable_static_ips: T.nilable(T::Boolean), link_type: T.nilable(Models::Shared::PostConnectCreateLinkRequestBodyLinkType), language: T.nilable(Models::Shared::PostConnectCreateLinkRequestBodyLanguage)).void }
43
+ def initialize(end_user_email:, end_user_organization_name:, end_user_origin_id: nil, remote_environment: nil, integration_category: Models::Shared::PostConnectCreateLinkRequestBodyIntegrationCategory::HRIS, integration_tool: nil, scope_config_id: nil, enable_filtering: false, enable_field_mapping: false, enable_static_ips: false, link_type: Models::Shared::PostConnectCreateLinkRequestBodyLinkType::EMBEDDED, language: Models::Shared::PostConnectCreateLinkRequestBodyLanguage::EN)
42
44
  @end_user_email = end_user_email
43
45
  @end_user_organization_name = end_user_organization_name
44
46
  @end_user_origin_id = end_user_origin_id
@@ -48,6 +50,7 @@ module Kombo
48
50
  @scope_config_id = scope_config_id
49
51
  @enable_filtering = enable_filtering
50
52
  @enable_field_mapping = enable_field_mapping
53
+ @enable_static_ips = enable_static_ips
51
54
  @link_type = link_type
52
55
  @language = language
53
56
  end
@@ -64,6 +67,7 @@ module Kombo
64
67
  return false unless @scope_config_id == other.scope_config_id
65
68
  return false unless @enable_filtering == other.enable_filtering
66
69
  return false unless @enable_field_mapping == other.enable_field_mapping
70
+ return false unless @enable_static_ips == other.enable_static_ips
67
71
  return false unless @link_type == other.link_type
68
72
  return false unless @language == other.language
69
73
  true
@@ -26,6 +26,8 @@ class Kombo::Models::Shared::PostConnectCreateLinkRequestBody
26
26
  def enable_filtering=(str_); end
27
27
  def enable_field_mapping(); end
28
28
  def enable_field_mapping=(str_); end
29
+ def enable_static_ips(); end
30
+ def enable_static_ips=(str_); end
29
31
  def link_type(); end
30
32
  def link_type=(str_); end
31
33
  def language(); end
@@ -8,7 +8,7 @@ module Kombo
8
8
  module Models
9
9
  module Shared
10
10
  # Fields specific to AFAS.
11
- class Afas
11
+ class PostHrisEmployeesEmployeeIdDocumentsRequestBodyAfas
12
12
  extend T::Sig
13
13
  include Crystalline::MetadataFields
14
14
 
@@ -0,0 +1,13 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Kombo::Models::Shared::PostHrisEmployeesEmployeeIdDocumentsRequestBodyAfas
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::PostHrisEmployeesEmployeeIdDocumentsRequestBodyAfas
11
+ def fields_(); end
12
+ def fields_=(str_); end
13
+ end
@@ -13,9 +13,9 @@ module Kombo
13
13
  include Crystalline::MetadataFields
14
14
 
15
15
  # Fields specific to AFAS.
16
- field :afas, Crystalline::Nilable.new(Models::Shared::Afas), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('afas') } }
16
+ field :afas, Crystalline::Nilable.new(Models::Shared::PostHrisEmployeesEmployeeIdDocumentsRequestBodyAfas), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('afas') } }
17
17
 
18
- sig { params(afas: T.nilable(Models::Shared::Afas)).void }
18
+ sig { params(afas: T.nilable(Models::Shared::PostHrisEmployeesEmployeeIdDocumentsRequestBodyAfas)).void }
19
19
  def initialize(afas: nil)
20
20
  @afas = afas
21
21
  end
@@ -0,0 +1,32 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Kombo
8
+ module Models
9
+ module Shared
10
+ # Fields specific to Lever.
11
+ class PutAtsApplicationsApplicationIdStageRequestBodyLever
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # ID of the Lever user that will show up as having moved the application. If not provided, Lever records the stage change without a user.
16
+ field :perform_as, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('perform_as') } }
17
+
18
+ sig { params(perform_as: T.nilable(::String)).void }
19
+ def initialize(perform_as: nil)
20
+ @perform_as = perform_as
21
+ end
22
+
23
+ sig { params(other: T.untyped).returns(T::Boolean) }
24
+ def ==(other)
25
+ return false unless other.is_a? self.class
26
+ return false unless @perform_as == other.perform_as
27
+ true
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,13 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Kombo::Models::Shared::PutAtsApplicationsApplicationIdStageRequestBodyLever
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::PutAtsApplicationsApplicationIdStageRequestBodyLever
11
+ def perform_as(); end
12
+ def perform_as=(str_); end
13
+ end
@@ -16,15 +16,18 @@ module Kombo
16
16
  field :workday, Crystalline::Nilable.new(Models::Shared::PutAtsApplicationsApplicationIdStageRequestBodyWorkday), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('workday') } }
17
17
  # Fields specific to SAP SuccessFactors.
18
18
  field :successfactors, Crystalline::Nilable.new(Models::Shared::PutAtsApplicationsApplicationIdStageRequestBodySuccessfactors), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('successfactors') } }
19
+ # Fields specific to Lever.
20
+ field :lever, Crystalline::Nilable.new(Models::Shared::PutAtsApplicationsApplicationIdStageRequestBodyLever), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('lever') } }
19
21
  # Fields specific to Greenhouse.
20
22
  field :greenhouse, Crystalline::Nilable.new(Models::Shared::PutAtsApplicationsApplicationIdStageRequestBodyGreenhouse), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('greenhouse') } }
21
23
  # Workable specific remote fields for ATS actions.
22
24
  field :workable, Crystalline::Nilable.new(Models::Shared::PutAtsApplicationsApplicationIdStageRequestBodyWorkable), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('workable') } }
23
25
 
24
- sig { params(workday: T.nilable(Models::Shared::PutAtsApplicationsApplicationIdStageRequestBodyWorkday), successfactors: T.nilable(Models::Shared::PutAtsApplicationsApplicationIdStageRequestBodySuccessfactors), greenhouse: T.nilable(Models::Shared::PutAtsApplicationsApplicationIdStageRequestBodyGreenhouse), workable: T.nilable(Models::Shared::PutAtsApplicationsApplicationIdStageRequestBodyWorkable)).void }
25
- def initialize(workday: nil, successfactors: nil, greenhouse: nil, workable: nil)
26
+ sig { params(workday: T.nilable(Models::Shared::PutAtsApplicationsApplicationIdStageRequestBodyWorkday), successfactors: T.nilable(Models::Shared::PutAtsApplicationsApplicationIdStageRequestBodySuccessfactors), lever: T.nilable(Models::Shared::PutAtsApplicationsApplicationIdStageRequestBodyLever), greenhouse: T.nilable(Models::Shared::PutAtsApplicationsApplicationIdStageRequestBodyGreenhouse), workable: T.nilable(Models::Shared::PutAtsApplicationsApplicationIdStageRequestBodyWorkable)).void }
27
+ def initialize(workday: nil, successfactors: nil, lever: nil, greenhouse: nil, workable: nil)
26
28
  @workday = workday
27
29
  @successfactors = successfactors
30
+ @lever = lever
28
31
  @greenhouse = greenhouse
29
32
  @workable = workable
30
33
  end
@@ -34,6 +37,7 @@ module Kombo
34
37
  return false unless other.is_a? self.class
35
38
  return false unless @workday == other.workday
36
39
  return false unless @successfactors == other.successfactors
40
+ return false unless @lever == other.lever
37
41
  return false unless @greenhouse == other.greenhouse
38
42
  return false unless @workable == other.workable
39
43
  true
@@ -12,6 +12,8 @@ class Kombo::Models::Shared::PutAtsApplicationsApplicationIdStageRequestBodyRemo
12
12
  def workday=(str_); end
13
13
  def successfactors(); end
14
14
  def successfactors=(str_); end
15
+ def lever(); end
16
+ def lever=(str_); end
15
17
  def greenhouse(); end
16
18
  def greenhouse=(str_); end
17
19
  def workable(); end
@@ -0,0 +1,27 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Kombo
8
+ module Models
9
+ module Shared
10
+
11
+ class Response
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+
16
+
17
+ def initialize; end
18
+
19
+ sig { params(other: T.untyped).returns(T::Boolean) }
20
+ def ==(other)
21
+ return false unless other.is_a? self.class
22
+ true
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,11 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Kombo::Models::Shared::Response
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::Response
11
+ end
@@ -0,0 +1,55 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Kombo
8
+ module Models
9
+ module Shared
10
+
11
+ class ResultBoolean
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # The question or attribute being assessed, e.g. "Willingness to travel".
16
+ field :label, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('label'), required: true } }
17
+ # ID of the question in the connected ATS. `null` when the ATS keeps the headline rating or summary outside the rubric.
18
+ field :remote_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('remote_id'), required: true } }
19
+ # Guidance the ATS shows the interviewer below the question, e.g. "1 is poor, 4 is great".
20
+ field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('description'), required: true } }
21
+ # Whether the ATS marked this question mandatory.
22
+ field :required, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('required'), required: true } }
23
+
24
+ field :type, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('type'), required: true } }
25
+ # The yes/no the interviewer picked.
26
+ field :answer, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('answer'), required: true } }
27
+
28
+ sig { params(label: ::String, remote_id: T.nilable(::String), description: T.nilable(::String), required: T.nilable(T::Boolean), type: ::String, answer: T.nilable(T::Boolean)).void }
29
+ def initialize(label:, remote_id: nil, description: nil, required: nil, type: 'BOOLEAN', answer: nil)
30
+ @label = label
31
+ @remote_id = remote_id
32
+ @description = description
33
+ @required = required
34
+ unless type == 'BOOLEAN'
35
+ raise ArgumentError, 'Invalid value for type'
36
+ end
37
+ @type = 'BOOLEAN'
38
+ @answer = answer
39
+ end
40
+
41
+ sig { params(other: T.untyped).returns(T::Boolean) }
42
+ def ==(other)
43
+ return false unless other.is_a? self.class
44
+ return false unless @label == other.label
45
+ return false unless @remote_id == other.remote_id
46
+ return false unless @description == other.description
47
+ return false unless @required == other.required
48
+ return false unless @type == other.type
49
+ return false unless @answer == other.answer
50
+ true
51
+ end
52
+ end
53
+ end
54
+ end
55
+ end
@@ -0,0 +1,23 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Kombo::Models::Shared::ResultBoolean
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::ResultBoolean
11
+ def label(); end
12
+ def label=(str_); end
13
+ def remote_id(); end
14
+ def remote_id=(str_); end
15
+ def description(); end
16
+ def description=(str_); end
17
+ def required(); end
18
+ def required=(str_); end
19
+ def type(); end
20
+ def type=(str_); end
21
+ def answer(); end
22
+ def answer=(str_); end
23
+ end
@@ -0,0 +1,55 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Kombo
8
+ module Models
9
+ module Shared
10
+
11
+ class ResultDate
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # The question or attribute being assessed, e.g. "Willingness to travel".
16
+ field :label, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('label'), required: true } }
17
+ # ID of the question in the connected ATS. `null` when the ATS keeps the headline rating or summary outside the rubric.
18
+ field :remote_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('remote_id'), required: true } }
19
+ # Guidance the ATS shows the interviewer below the question, e.g. "1 is poor, 4 is great".
20
+ field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('description'), required: true } }
21
+ # Whether the ATS marked this question mandatory.
22
+ field :required, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('required'), required: true } }
23
+
24
+ field :type, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('type'), required: true } }
25
+ # Date in `YYYY-MM-DD` format.
26
+ field :answer, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('answer'), required: true } }
27
+
28
+ sig { params(label: ::String, remote_id: T.nilable(::String), description: T.nilable(::String), required: T.nilable(T::Boolean), type: ::String, answer: T.nilable(::String)).void }
29
+ def initialize(label:, remote_id: nil, description: nil, required: nil, type: 'DATE', answer: nil)
30
+ @label = label
31
+ @remote_id = remote_id
32
+ @description = description
33
+ @required = required
34
+ unless type == 'DATE'
35
+ raise ArgumentError, 'Invalid value for type'
36
+ end
37
+ @type = 'DATE'
38
+ @answer = answer
39
+ end
40
+
41
+ sig { params(other: T.untyped).returns(T::Boolean) }
42
+ def ==(other)
43
+ return false unless other.is_a? self.class
44
+ return false unless @label == other.label
45
+ return false unless @remote_id == other.remote_id
46
+ return false unless @description == other.description
47
+ return false unless @required == other.required
48
+ return false unless @type == other.type
49
+ return false unless @answer == other.answer
50
+ true
51
+ end
52
+ end
53
+ end
54
+ end
55
+ end
@@ -0,0 +1,23 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Kombo::Models::Shared::ResultDate
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::ResultDate
11
+ def label(); end
12
+ def label=(str_); end
13
+ def remote_id(); end
14
+ def remote_id=(str_); end
15
+ def description(); end
16
+ def description=(str_); end
17
+ def required(); end
18
+ def required=(str_); end
19
+ def type(); end
20
+ def type=(str_); end
21
+ def answer(); end
22
+ def answer=(str_); end
23
+ end