kombo 1.2.8 → 1.2.9

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 (163) hide show
  1. checksums.yaml +4 -4
  2. data/lib/kombo/ats.rb +322 -0
  3. data/lib/kombo/connect.rb +2 -1
  4. data/lib/kombo/general.rb +11 -1
  5. data/lib/kombo/hris.rb +322 -0
  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/change.rb +19 -0
  26. data/lib/kombo/models/shared/change.rbi +11 -0
  27. data/lib/kombo/models/shared/content_ref.rb +43 -0
  28. data/lib/kombo/models/shared/content_ref.rbi +17 -0
  29. data/lib/kombo/models/shared/employee.rb +57 -0
  30. data/lib/kombo/models/shared/employee.rbi +25 -0
  31. data/lib/kombo/models/shared/format_multiselect.rb +2 -2
  32. data/lib/kombo/models/shared/format_singleselect.rb +2 -2
  33. data/lib/kombo/models/shared/getatsattachmentspositiveresponse.rb +39 -0
  34. data/lib/kombo/models/shared/getatsattachmentspositiveresponse.rbi +15 -0
  35. data/lib/kombo/models/shared/getatsattachmentspositiveresponse_data.rb +36 -0
  36. data/lib/kombo/models/shared/getatsattachmentspositiveresponse_data.rbi +15 -0
  37. data/lib/kombo/models/shared/getatsattachmentspositiveresponse_result.rb +76 -0
  38. data/lib/kombo/models/shared/getatsattachmentspositiveresponse_result.rbi +33 -0
  39. data/lib/kombo/models/shared/getatsattachmentspositiveresponse_type.rb +20 -0
  40. data/lib/kombo/models/shared/getatsattachmentspositiveresponse_type.rbi +11 -0
  41. data/lib/kombo/models/shared/{option_1.rb → getatsjobspositiveresponse_option_1.rb} +1 -1
  42. data/lib/kombo/models/shared/{option_2.rbi → getatsjobspositiveresponse_option_1.rbi} +2 -2
  43. data/lib/kombo/models/shared/{option_2.rb → getatsjobspositiveresponse_option_2.rb} +1 -1
  44. data/lib/kombo/models/shared/getatsjobspositiveresponse_option_2.rbi +17 -0
  45. data/lib/kombo/models/shared/{author.rb → getatsnotespositiveresponse_author.rb} +1 -1
  46. data/lib/kombo/models/shared/{author.rbi → getatsnotespositiveresponse_author.rbi} +2 -2
  47. data/lib/kombo/models/shared/getatsnotespositiveresponse_result.rb +2 -2
  48. data/lib/kombo/models/shared/getatsscorecardspositiveresponse.rb +39 -0
  49. data/lib/kombo/models/shared/getatsscorecardspositiveresponse.rbi +15 -0
  50. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_answer_1.rb +36 -0
  51. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_answer_1.rbi +15 -0
  52. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_answer_2.rb +36 -0
  53. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_answer_2.rbi +15 -0
  54. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_author.rb +48 -0
  55. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_author.rbi +21 -0
  56. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_data.rb +36 -0
  57. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_data.rbi +15 -0
  58. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_option_1.rb +36 -0
  59. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_option_1.rbi +15 -0
  60. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_option_2.rb +36 -0
  61. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_option_2.rbi +15 -0
  62. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_result.rb +80 -0
  63. data/lib/kombo/models/shared/getatsscorecardspositiveresponse_result.rbi +35 -0
  64. data/lib/kombo/models/shared/gethrispayrunspositiveresponse.rb +39 -0
  65. data/lib/kombo/models/shared/gethrispayrunspositiveresponse.rbi +15 -0
  66. data/lib/kombo/models/shared/gethrispayrunspositiveresponse_data.rb +36 -0
  67. data/lib/kombo/models/shared/gethrispayrunspositiveresponse_data.rbi +15 -0
  68. data/lib/kombo/models/shared/gethrispayrunspositiveresponse_gross_pay.rb +36 -0
  69. data/lib/kombo/models/shared/gethrispayrunspositiveresponse_gross_pay.rbi +15 -0
  70. data/lib/kombo/models/shared/gethrispayrunspositiveresponse_net_pay.rb +36 -0
  71. data/lib/kombo/models/shared/gethrispayrunspositiveresponse_net_pay.rbi +15 -0
  72. data/lib/kombo/models/shared/gethrispayrunspositiveresponse_paid_amount.rb +36 -0
  73. data/lib/kombo/models/shared/gethrispayrunspositiveresponse_paid_amount.rbi +15 -0
  74. data/lib/kombo/models/shared/gethrispayrunspositiveresponse_result.rb +62 -0
  75. data/lib/kombo/models/shared/gethrispayrunspositiveresponse_result.rbi +27 -0
  76. data/lib/kombo/models/shared/gethrispayrunspositiveresponse_totals.rb +40 -0
  77. data/lib/kombo/models/shared/gethrispayrunspositiveresponse_totals.rbi +17 -0
  78. data/lib/kombo/models/shared/gethrispayslipspositiveresponse.rb +39 -0
  79. data/lib/kombo/models/shared/gethrispayslipspositiveresponse.rbi +15 -0
  80. data/lib/kombo/models/shared/gethrispayslipspositiveresponse_data.rb +36 -0
  81. data/lib/kombo/models/shared/gethrispayslipspositiveresponse_data.rbi +15 -0
  82. data/lib/kombo/models/shared/gethrispayslipspositiveresponse_gross_pay.rb +36 -0
  83. data/lib/kombo/models/shared/gethrispayslipspositiveresponse_gross_pay.rbi +15 -0
  84. data/lib/kombo/models/shared/gethrispayslipspositiveresponse_net_pay.rb +36 -0
  85. data/lib/kombo/models/shared/gethrispayslipspositiveresponse_net_pay.rbi +15 -0
  86. data/lib/kombo/models/shared/gethrispayslipspositiveresponse_paid_amount.rb +36 -0
  87. data/lib/kombo/models/shared/gethrispayslipspositiveresponse_paid_amount.rbi +15 -0
  88. data/lib/kombo/models/shared/gethrispayslipspositiveresponse_result.rb +62 -0
  89. data/lib/kombo/models/shared/gethrispayslipspositiveresponse_result.rbi +27 -0
  90. data/lib/kombo/models/shared/gethrispayslipspositiveresponse_totals.rb +40 -0
  91. data/lib/kombo/models/shared/gethrispayslipspositiveresponse_totals.rbi +17 -0
  92. data/lib/kombo/models/shared/integration.rb +44 -0
  93. data/lib/kombo/models/shared/integration.rbi +19 -0
  94. data/lib/kombo/models/shared/integration_tool.rb +4 -0
  95. data/lib/kombo/models/shared/issue.rb +56 -0
  96. data/lib/kombo/models/shared/issue.rbi +25 -0
  97. data/lib/kombo/models/shared/issuestatuschangedwebhookpayload.rb +40 -0
  98. data/lib/kombo/models/shared/issuestatuschangedwebhookpayload.rbi +17 -0
  99. data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_category.rb +21 -0
  100. data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_category.rbi +11 -0
  101. data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_data.rb +40 -0
  102. data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_data.rbi +17 -0
  103. data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_end_user.rb +40 -0
  104. data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_end_user.rbi +17 -0
  105. data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_status.rb +19 -0
  106. data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_status.rbi +11 -0
  107. data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_type.rb +18 -0
  108. data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_type.rbi +11 -0
  109. data/lib/kombo/models/shared/line_item.rb +44 -0
  110. data/lib/kombo/models/shared/{option_1.rbi → line_item.rbi} +6 -4
  111. data/lib/kombo/models/shared/name.rb +6 -0
  112. data/lib/kombo/models/shared/pay_run.rb +48 -0
  113. data/lib/kombo/models/shared/pay_run.rbi +21 -0
  114. data/lib/kombo/models/shared/postatscandidatesrequestbody_afas.rb +32 -0
  115. data/lib/kombo/models/shared/{afas.rbi → postatscandidatesrequestbody_afas.rbi} +2 -2
  116. data/lib/kombo/models/shared/postatscandidatesrequestbody_avature.rb +6 -2
  117. data/lib/kombo/models/shared/postatscandidatesrequestbody_avature.rbi +2 -0
  118. data/lib/kombo/models/shared/postatscandidatesrequestbody_custom_field.rb +48 -0
  119. data/lib/kombo/models/shared/postatscandidatesrequestbody_custom_field.rbi +21 -0
  120. data/lib/kombo/models/shared/postatscandidatesrequestbody_recruitcrm.rb +32 -0
  121. data/lib/kombo/models/shared/postatscandidatesrequestbody_recruitcrm.rbi +13 -0
  122. data/lib/kombo/models/shared/postatscandidatesrequestbody_remote_fields.rb +10 -2
  123. data/lib/kombo/models/shared/postatscandidatesrequestbody_remote_fields.rbi +4 -0
  124. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_afas.rb +32 -0
  125. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_afas.rbi +13 -0
  126. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_avature.rb +6 -2
  127. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_avature.rbi +2 -0
  128. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_custom_field.rb +48 -0
  129. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_custom_field.rbi +21 -0
  130. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_recruitcrm.rb +32 -0
  131. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_recruitcrm.rbi +13 -0
  132. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_remote_fields.rb +10 -2
  133. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_remote_fields.rbi +4 -0
  134. data/lib/kombo/models/shared/postconnectcreatelinkpositiveresponse_data.rb +6 -2
  135. data/lib/kombo/models/shared/postconnectcreatelinkpositiveresponse_data.rbi +2 -0
  136. data/lib/kombo/models/shared/postconnectcreatelinkrequestbody.rb +6 -2
  137. data/lib/kombo/models/shared/postconnectcreatelinkrequestbody.rbi +2 -0
  138. data/lib/kombo/models/shared/{afas.rb → posthrisemployeesemployeeiddocumentsrequestbody_afas.rb} +1 -1
  139. data/lib/kombo/models/shared/posthrisemployeesemployeeiddocumentsrequestbody_afas.rbi +13 -0
  140. data/lib/kombo/models/shared/posthrisemployeesemployeeiddocumentsrequestbody_remote_fields.rb +2 -2
  141. data/lib/kombo/models/shared/response.rb +27 -0
  142. data/lib/kombo/models/shared/response.rbi +11 -0
  143. data/lib/kombo/models/shared/result_boolean.rb +55 -0
  144. data/lib/kombo/models/shared/result_boolean.rbi +23 -0
  145. data/lib/kombo/models/shared/result_date.rb +55 -0
  146. data/lib/kombo/models/shared/result_date.rbi +23 -0
  147. data/lib/kombo/models/shared/result_multiselect.rb +59 -0
  148. data/lib/kombo/models/shared/result_multiselect.rbi +25 -0
  149. data/lib/kombo/models/shared/result_number.rb +55 -0
  150. data/lib/kombo/models/shared/result_number.rbi +23 -0
  151. data/lib/kombo/models/shared/result_singleselect.rb +59 -0
  152. data/lib/kombo/models/shared/result_singleselect.rbi +25 -0
  153. data/lib/kombo/models/shared/result_text.rb +55 -0
  154. data/lib/kombo/models/shared/result_text.rbi +23 -0
  155. data/lib/kombo/models/shared.rb +57 -4
  156. data/lib/kombo/models/webhooks/webhookissuestatuschangedwebhookpayload_request.rb +36 -0
  157. data/lib/kombo/models/webhooks/webhookissuestatuschangedwebhookpayload_request.rbi +15 -0
  158. data/lib/kombo/models/webhooks/webhookissuestatuschangedwebhookpayload_response.rb +40 -0
  159. data/lib/kombo/models/webhooks/webhookissuestatuschangedwebhookpayload_response.rbi +17 -0
  160. data/lib/kombo/models/webhooks.rb +2 -0
  161. data/lib/kombo/sdkconfiguration.rb +5 -3
  162. data/lib/kombo/utils/utils.rb +6 -2
  163. metadata +136 -10
@@ -0,0 +1,48 @@
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 GetAtsScorecardsPositiveResponseAuthor
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # The globally unique ID of this object generated by Kombo. We recommend using this as a stable primary key for syncing.
16
+ field :id, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('id'), required: true } }
17
+ # The raw ID of the object in the remote system. We don't recommend using this as a primary key on your side as it might sometimes be compromised of multiple identifiers if a system doesn't provide a clear primary key.
18
+ field :remote_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('remote_id'), required: true } }
19
+ # First name of the user.
20
+ field :first_name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('first_name'), required: true } }
21
+ # Last name of the user.
22
+ field :last_name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('last_name'), required: true } }
23
+ # Email of the user. If the email address is invalid, it will be set to null.
24
+ field :email, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('email') } }
25
+
26
+ sig { params(id: ::String, remote_id: T.nilable(::String), first_name: T.nilable(::String), last_name: T.nilable(::String), email: T.nilable(::String)).void }
27
+ def initialize(id:, remote_id: nil, first_name: nil, last_name: nil, email: nil)
28
+ @id = id
29
+ @remote_id = remote_id
30
+ @first_name = first_name
31
+ @last_name = last_name
32
+ @email = email
33
+ end
34
+
35
+ sig { params(other: T.untyped).returns(T::Boolean) }
36
+ def ==(other)
37
+ return false unless other.is_a? self.class
38
+ return false unless @id == other.id
39
+ return false unless @remote_id == other.remote_id
40
+ return false unless @first_name == other.first_name
41
+ return false unless @last_name == other.last_name
42
+ return false unless @email == other.email
43
+ true
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,21 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Kombo::Models::Shared::GetAtsScorecardsPositiveResponseAuthor
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::GetAtsScorecardsPositiveResponseAuthor
11
+ def id(); end
12
+ def id=(str_); end
13
+ def remote_id(); end
14
+ def remote_id=(str_); end
15
+ def first_name(); end
16
+ def first_name=(str_); end
17
+ def last_name(); end
18
+ def last_name=(str_); end
19
+ def email(); end
20
+ def email=(str_); end
21
+ end
@@ -0,0 +1,36 @@
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 GetAtsScorecardsPositiveResponseData
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+
16
+ field :results, Crystalline::Array.new(Models::Shared::GetAtsScorecardsPositiveResponseResult), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('results'), required: true } }
17
+ # Cursor string that can be passed to the `cursor` query parameter to get the next page. If this is `null`, then there are no more pages.
18
+ field :next_, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('next'), required: true } }
19
+
20
+ sig { params(results: T::Array[Models::Shared::GetAtsScorecardsPositiveResponseResult], next_: T.nilable(::String)).void }
21
+ def initialize(results:, next_: nil)
22
+ @results = results
23
+ @next_ = next_
24
+ end
25
+
26
+ sig { params(other: T.untyped).returns(T::Boolean) }
27
+ def ==(other)
28
+ return false unless other.is_a? self.class
29
+ return false unless @results == other.results
30
+ return false unless @next_ == other.next_
31
+ true
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,15 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Kombo::Models::Shared::GetAtsScorecardsPositiveResponseData
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::GetAtsScorecardsPositiveResponseData
11
+ def results(); end
12
+ def results=(str_); end
13
+ def next_(); end
14
+ def next_=(str_); end
15
+ end
@@ -0,0 +1,36 @@
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 GetAtsScorecardsPositiveResponseOption1
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # The option as the interviewer sees it, e.g. "Strong Hire".
16
+ field :label, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('label'), required: true } }
17
+ # The ID of this option in the remote system, e.g. `strong_hire`. `null` when the system identifies the option only by its label.
18
+ field :remote_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('remote_id'), required: true } }
19
+
20
+ sig { params(label: ::String, remote_id: T.nilable(::String)).void }
21
+ def initialize(label:, remote_id: nil)
22
+ @label = label
23
+ @remote_id = remote_id
24
+ end
25
+
26
+ sig { params(other: T.untyped).returns(T::Boolean) }
27
+ def ==(other)
28
+ return false unless other.is_a? self.class
29
+ return false unless @label == other.label
30
+ return false unless @remote_id == other.remote_id
31
+ true
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,15 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Kombo::Models::Shared::GetAtsScorecardsPositiveResponseOption1
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::GetAtsScorecardsPositiveResponseOption1
11
+ def label(); end
12
+ def label=(str_); end
13
+ def remote_id(); end
14
+ def remote_id=(str_); end
15
+ end
@@ -0,0 +1,36 @@
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 GetAtsScorecardsPositiveResponseOption2
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # The option as the interviewer sees it, e.g. "Strong Hire".
16
+ field :label, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('label'), required: true } }
17
+ # The ID of this option in the remote system, e.g. `strong_hire`. `null` when the system identifies the option only by its label.
18
+ field :remote_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('remote_id'), required: true } }
19
+
20
+ sig { params(label: ::String, remote_id: T.nilable(::String)).void }
21
+ def initialize(label:, remote_id: nil)
22
+ @label = label
23
+ @remote_id = remote_id
24
+ end
25
+
26
+ sig { params(other: T.untyped).returns(T::Boolean) }
27
+ def ==(other)
28
+ return false unless other.is_a? self.class
29
+ return false unless @label == other.label
30
+ return false unless @remote_id == other.remote_id
31
+ true
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,15 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Kombo::Models::Shared::GetAtsScorecardsPositiveResponseOption2
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::GetAtsScorecardsPositiveResponseOption2
11
+ def label(); end
12
+ def label=(str_); end
13
+ def remote_id(); end
14
+ def remote_id=(str_); end
15
+ end
@@ -0,0 +1,80 @@
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 GetAtsScorecardsPositiveResponseResult
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # The globally unique ID of this object generated by Kombo. We recommend using this as a stable primary key for syncing.
16
+ field :id, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('id'), required: true } }
17
+ # The raw ID of the object in the remote system. We don't recommend using this as a primary key on your side as it might sometimes be compromised of multiple identifiers if a system doesn't provide a clear primary key.
18
+ field :remote_id, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('remote_id'), required: true } }
19
+ # The timestamp when this specific record was last modified. This field only updates when properties directly on this record change, NOT when related or nested models change. For filtering that considers nested data changes, use the `updated_after` parameter which will return records when either the record itself OR its related models have been updated.
20
+ # https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString
21
+ field :changed_at, ::DateTime, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('changed_at'), required: true, 'decoder': ::Kombo::Utils.datetime_from_iso_format(false) } }
22
+ # The Kombo ID of the candidate this scorecard evaluates.
23
+ field :candidate_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('candidate_id'), required: true } }
24
+ # The Kombo ID of the application this scorecard belongs to.
25
+ field :application_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('application_id'), required: true } }
26
+ # The Kombo ID of the interview this scorecard was submitted against.
27
+ field :interview_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('interview_id'), required: true } }
28
+ # The Kombo ID of the user this evaluation belongs to. Where the ATS distinguishes who submitted the scorecard from whose review it is, this is the source of the opinion (the user whose evaluation it is, not whoever entered it). The ID can be used to retrieve the user from the `get users` endpoint.
29
+ field :author_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('author_id'), required: true } }
30
+ # The date and time the object was created in the remote system.
31
+ # https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString
32
+ field :remote_created_at, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('remote_created_at'), required: true, 'decoder': ::Kombo::Utils.datetime_from_iso_format(false) } }
33
+ # A timestamp retrieved from the remote system, describing when the resource was last updated.
34
+ # https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString
35
+ field :remote_updated_at, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('remote_updated_at'), required: true, 'decoder': ::Kombo::Utils.datetime_from_iso_format(false) } }
36
+ # The date and time the object was deleted in the remote system. Objects are automatically marked as deleted when Kombo can't retrieve them from the remote system anymore. Kombo will also anonymize entries 14 days after they disappear.
37
+ # https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString
38
+ field :remote_deleted_at, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('remote_deleted_at'), required: true, 'decoder': ::Kombo::Utils.datetime_from_iso_format(false) } }
39
+
40
+ field :author, Crystalline::Nilable.new(Models::Shared::GetAtsScorecardsPositiveResponseAuthor), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('author'), required: true } }
41
+ # Every question on the scorecard, together with its definition and the answer submitted by the interviewer.
42
+ field :responses, Crystalline::Nilable.new(Crystalline::Array.new(Crystalline::Union.new(Models::Shared::ResultText, Models::Shared::ResultSingleSelect, Models::Shared::ResultMultiSelect, Models::Shared::ResultBoolean, Models::Shared::ResultNumber, Models::Shared::ResultDate))), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('responses') } }
43
+
44
+ sig { params(id: ::String, remote_id: ::String, changed_at: ::DateTime, candidate_id: T.nilable(::String), application_id: T.nilable(::String), interview_id: T.nilable(::String), author_id: T.nilable(::String), remote_created_at: T.nilable(::DateTime), remote_updated_at: T.nilable(::DateTime), remote_deleted_at: T.nilable(::DateTime), author: T.nilable(Models::Shared::GetAtsScorecardsPositiveResponseAuthor), responses: T.nilable(T::Array[T.any(Models::Shared::ResultText, Models::Shared::ResultSingleSelect, Models::Shared::ResultMultiSelect, Models::Shared::ResultBoolean, Models::Shared::ResultNumber, Models::Shared::ResultDate)])).void }
45
+ def initialize(id:, remote_id:, changed_at:, candidate_id: nil, application_id: nil, interview_id: nil, author_id: nil, remote_created_at: nil, remote_updated_at: nil, remote_deleted_at: nil, author: nil, responses: nil)
46
+ @id = id
47
+ @remote_id = remote_id
48
+ @changed_at = changed_at
49
+ @candidate_id = candidate_id
50
+ @application_id = application_id
51
+ @interview_id = interview_id
52
+ @author_id = author_id
53
+ @remote_created_at = remote_created_at
54
+ @remote_updated_at = remote_updated_at
55
+ @remote_deleted_at = remote_deleted_at
56
+ @author = author
57
+ @responses = responses
58
+ end
59
+
60
+ sig { params(other: T.untyped).returns(T::Boolean) }
61
+ def ==(other)
62
+ return false unless other.is_a? self.class
63
+ return false unless @id == other.id
64
+ return false unless @remote_id == other.remote_id
65
+ return false unless @changed_at == other.changed_at
66
+ return false unless @candidate_id == other.candidate_id
67
+ return false unless @application_id == other.application_id
68
+ return false unless @interview_id == other.interview_id
69
+ return false unless @author_id == other.author_id
70
+ return false unless @remote_created_at == other.remote_created_at
71
+ return false unless @remote_updated_at == other.remote_updated_at
72
+ return false unless @remote_deleted_at == other.remote_deleted_at
73
+ return false unless @author == other.author
74
+ return false unless @responses == other.responses
75
+ true
76
+ end
77
+ end
78
+ end
79
+ end
80
+ end
@@ -0,0 +1,35 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Kombo::Models::Shared::GetAtsScorecardsPositiveResponseResult
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::GetAtsScorecardsPositiveResponseResult
11
+ def id(); end
12
+ def id=(str_); end
13
+ def remote_id(); end
14
+ def remote_id=(str_); end
15
+ def changed_at(); end
16
+ def changed_at=(str_); end
17
+ def candidate_id(); end
18
+ def candidate_id=(str_); end
19
+ def application_id(); end
20
+ def application_id=(str_); end
21
+ def interview_id(); end
22
+ def interview_id=(str_); end
23
+ def author_id(); end
24
+ def author_id=(str_); end
25
+ def remote_created_at(); end
26
+ def remote_created_at=(str_); end
27
+ def remote_updated_at(); end
28
+ def remote_updated_at=(str_); end
29
+ def remote_deleted_at(); end
30
+ def remote_deleted_at=(str_); end
31
+ def author(); end
32
+ def author=(str_); end
33
+ def responses(); end
34
+ def responses=(str_); end
35
+ end
@@ -0,0 +1,39 @@
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 GetHrisPayRunsPositiveResponse
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+
16
+ field :data, Models::Shared::GetHrisPayRunsPositiveResponseData, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('data'), required: true } }
17
+
18
+ field :status, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('status'), required: true } }
19
+
20
+ sig { params(data: Models::Shared::GetHrisPayRunsPositiveResponseData, status: ::String).void }
21
+ def initialize(data:, status: 'success')
22
+ @data = data
23
+ unless status == 'success'
24
+ raise ArgumentError, 'Invalid value for status'
25
+ end
26
+ @status = 'success'
27
+ end
28
+
29
+ sig { params(other: T.untyped).returns(T::Boolean) }
30
+ def ==(other)
31
+ return false unless other.is_a? self.class
32
+ return false unless @data == other.data
33
+ return false unless @status == other.status
34
+ true
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,15 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Kombo::Models::Shared::GetHrisPayRunsPositiveResponse
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::GetHrisPayRunsPositiveResponse
11
+ def data(); end
12
+ def data=(str_); end
13
+ def status(); end
14
+ def status=(str_); end
15
+ end
@@ -0,0 +1,36 @@
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 GetHrisPayRunsPositiveResponseData
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+
16
+ field :results, Crystalline::Array.new(Models::Shared::GetHrisPayRunsPositiveResponseResult), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('results'), required: true } }
17
+ # Cursor string that can be passed to the `cursor` query parameter to get the next page. If this is `null`, then there are no more pages.
18
+ field :next_, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('next'), required: true } }
19
+
20
+ sig { params(results: T::Array[Models::Shared::GetHrisPayRunsPositiveResponseResult], next_: T.nilable(::String)).void }
21
+ def initialize(results:, next_: nil)
22
+ @results = results
23
+ @next_ = next_
24
+ end
25
+
26
+ sig { params(other: T.untyped).returns(T::Boolean) }
27
+ def ==(other)
28
+ return false unless other.is_a? self.class
29
+ return false unless @results == other.results
30
+ return false unless @next_ == other.next_
31
+ true
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,15 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Kombo::Models::Shared::GetHrisPayRunsPositiveResponseData
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::GetHrisPayRunsPositiveResponseData
11
+ def results(); end
12
+ def results=(str_); end
13
+ def next_(); end
14
+ def next_=(str_); end
15
+ end
@@ -0,0 +1,36 @@
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
+ # The total gross pay for the pay run, before taxes and after gross deductions.
11
+ class GetHrisPayRunsPositiveResponseGrossPay
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # The [ISO 4217 currency code](https://www.iso.org/iso-4217-currency-codes.html) the value is denominated in.
16
+ field :currency, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('currency'), required: true } }
17
+ # The monetary value.
18
+ field :value, ::Float, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('value'), required: true } }
19
+
20
+ sig { params(currency: ::String, value: ::Float).void }
21
+ def initialize(currency:, value:)
22
+ @currency = currency
23
+ @value = value
24
+ end
25
+
26
+ sig { params(other: T.untyped).returns(T::Boolean) }
27
+ def ==(other)
28
+ return false unless other.is_a? self.class
29
+ return false unless @currency == other.currency
30
+ return false unless @value == other.value
31
+ true
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,15 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Kombo::Models::Shared::GetHrisPayRunsPositiveResponseGrossPay
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::GetHrisPayRunsPositiveResponseGrossPay
11
+ def currency(); end
12
+ def currency=(str_); end
13
+ def value(); end
14
+ def value=(str_); end
15
+ end
@@ -0,0 +1,36 @@
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
+ # The total net pay for the pay run, after taxes have been applied to the gross pay.
11
+ class GetHrisPayRunsPositiveResponseNetPay
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # The [ISO 4217 currency code](https://www.iso.org/iso-4217-currency-codes.html) the value is denominated in.
16
+ field :currency, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('currency'), required: true } }
17
+ # The monetary value.
18
+ field :value, ::Float, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('value'), required: true } }
19
+
20
+ sig { params(currency: ::String, value: ::Float).void }
21
+ def initialize(currency:, value:)
22
+ @currency = currency
23
+ @value = value
24
+ end
25
+
26
+ sig { params(other: T.untyped).returns(T::Boolean) }
27
+ def ==(other)
28
+ return false unless other.is_a? self.class
29
+ return false unless @currency == other.currency
30
+ return false unless @value == other.value
31
+ true
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,15 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Kombo::Models::Shared::GetHrisPayRunsPositiveResponseNetPay
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::GetHrisPayRunsPositiveResponseNetPay
11
+ def currency(); end
12
+ def currency=(str_); end
13
+ def value(); end
14
+ def value=(str_); end
15
+ end
@@ -0,0 +1,36 @@
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
+ # The total amount paid out through the pay run. This value accounts for net earnings and deductions.
11
+ class GetHrisPayRunsPositiveResponsePaidAmount
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # The [ISO 4217 currency code](https://www.iso.org/iso-4217-currency-codes.html) the value is denominated in.
16
+ field :currency, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('currency'), required: true } }
17
+ # The monetary value.
18
+ field :value, ::Float, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('value'), required: true } }
19
+
20
+ sig { params(currency: ::String, value: ::Float).void }
21
+ def initialize(currency:, value:)
22
+ @currency = currency
23
+ @value = value
24
+ end
25
+
26
+ sig { params(other: T.untyped).returns(T::Boolean) }
27
+ def ==(other)
28
+ return false unless other.is_a? self.class
29
+ return false unless @currency == other.currency
30
+ return false unless @value == other.value
31
+ true
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,15 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Kombo::Models::Shared::GetHrisPayRunsPositiveResponsePaidAmount
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::GetHrisPayRunsPositiveResponsePaidAmount
11
+ def currency(); end
12
+ def currency=(str_); end
13
+ def value(); end
14
+ def value=(str_); end
15
+ end