kombo 1.1.1 → 1.1.3

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 (66) hide show
  1. checksums.yaml +4 -4
  2. data/lib/kombo/general.rb +142 -1
  3. data/lib/kombo/models/operations/getatsapplications_request.rb +2 -2
  4. data/lib/kombo/models/operations/getatscandidates_request.rb +2 -2
  5. data/lib/kombo/models/operations/getatsinterviews_request.rb +2 -2
  6. data/lib/kombo/models/operations/getatsjobs_request.rb +2 -2
  7. data/lib/kombo/models/operations/getatsoffers_request.rb +2 -2
  8. data/lib/kombo/models/operations/getatsusers_request.rb +2 -2
  9. data/lib/kombo/models/operations/gethrisabsences_request.rb +2 -2
  10. data/lib/kombo/models/operations/gethrisemployees_request.rb +2 -2
  11. data/lib/kombo/models/operations/gethrisperformancereviews_request.rb +2 -2
  12. data/lib/kombo/models/operations/gethrisstaffingentities_request.rb +2 -2
  13. data/lib/kombo/models/operations/gethristimeoffbalances_request.rb +2 -2
  14. data/lib/kombo/models/operations/postintegrationsintegrationidsetuplink_request.rb +36 -0
  15. data/lib/kombo/models/operations/postintegrationsintegrationidsetuplink_request.rbi +15 -0
  16. data/lib/kombo/models/operations/postintegrationsintegrationidsetuplink_response.rb +44 -0
  17. data/lib/kombo/models/operations/postintegrationsintegrationidsetuplink_response.rbi +19 -0
  18. data/lib/kombo/models/operations.rb +2 -0
  19. data/lib/kombo/models/shared/getatsjobspositiveresponse_result.rb +2 -2
  20. data/lib/kombo/models/shared/{visibility.rb → getatsjobspositiveresponse_visibility.rb} +1 -1
  21. data/lib/kombo/models/shared/getatsjobspositiveresponse_visibility.rbi +11 -0
  22. data/lib/kombo/models/shared/imported_id.rb +6 -2
  23. data/lib/kombo/models/shared/imported_id.rbi +2 -0
  24. data/lib/kombo/models/shared/integration_tool.rb +6 -0
  25. data/lib/kombo/models/shared/postatsapplicationsapplicationidnotesrequestbody_greenhousev3.rb +32 -0
  26. data/lib/kombo/models/shared/postatsapplicationsapplicationidnotesrequestbody_greenhousev3.rbi +13 -0
  27. data/lib/kombo/models/shared/postatsapplicationsapplicationidnotesrequestbody_remote_fields.rb +6 -2
  28. data/lib/kombo/models/shared/postatsapplicationsapplicationidnotesrequestbody_remote_fields.rbi +2 -0
  29. data/lib/kombo/models/shared/postatsapplicationsapplicationidnotesrequestbody_visibility.rb +22 -0
  30. data/lib/kombo/models/shared/postatsapplicationsapplicationidnotesrequestbody_visibility.rbi +11 -0
  31. data/lib/kombo/models/shared/postatsapplicationsapplicationidrejectrequestbody_greenhousev3.rb +32 -0
  32. data/lib/kombo/models/shared/postatsapplicationsapplicationidrejectrequestbody_greenhousev3.rbi +13 -0
  33. data/lib/kombo/models/shared/postatsapplicationsapplicationidrejectrequestbody_remote_fields.rb +6 -2
  34. data/lib/kombo/models/shared/postatsapplicationsapplicationidrejectrequestbody_remote_fields.rbi +2 -0
  35. data/lib/kombo/models/shared/postatscandidatesrequestbody_greenhousev3.rb +36 -0
  36. data/lib/kombo/models/shared/postatscandidatesrequestbody_greenhousev3.rbi +15 -0
  37. data/lib/kombo/models/shared/postatscandidatesrequestbody_remote_fields.rb +6 -2
  38. data/lib/kombo/models/shared/postatscandidatesrequestbody_remote_fields.rbi +2 -0
  39. data/lib/kombo/models/shared/postatsimporttrackedapplicationpositiveresponse_greenhousev3_applicationid.rb +39 -0
  40. data/lib/kombo/models/shared/postatsimporttrackedapplicationpositiveresponse_greenhousev3_applicationid.rbi +15 -0
  41. data/lib/kombo/models/shared/postatsimporttrackedapplicationpositiveresponse_greenhousev3_union.rb +27 -0
  42. data/lib/kombo/models/shared/postatsimporttrackedapplicationpositiveresponse_greenhousev3_union.rbi +11 -0
  43. data/lib/kombo/models/shared/postatsimporttrackedapplicationrequestbody.rb +6 -2
  44. data/lib/kombo/models/shared/postatsimporttrackedapplicationrequestbody.rbi +2 -0
  45. data/lib/kombo/models/shared/postatsimporttrackedapplicationrequestbody_greenhousev3_applicationid.rb +39 -0
  46. data/lib/kombo/models/shared/postatsimporttrackedapplicationrequestbody_greenhousev3_applicationid.rbi +15 -0
  47. data/lib/kombo/models/shared/postatsimporttrackedapplicationrequestbody_greenhousev3_union.rb +27 -0
  48. data/lib/kombo/models/shared/postatsimporttrackedapplicationrequestbody_greenhousev3_union.rbi +11 -0
  49. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_greenhousev3.rb +36 -0
  50. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_greenhousev3.rbi +15 -0
  51. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_remote_fields.rb +6 -2
  52. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_remote_fields.rbi +2 -0
  53. data/lib/kombo/models/shared/postintegrationsintegrationidsetuplinkpositiveresponse.rb +39 -0
  54. data/lib/kombo/models/shared/postintegrationsintegrationidsetuplinkpositiveresponse.rbi +15 -0
  55. data/lib/kombo/models/shared/postintegrationsintegrationidsetuplinkpositiveresponse_data.rb +32 -0
  56. data/lib/kombo/models/shared/postintegrationsintegrationidsetuplinkpositiveresponse_data.rbi +13 -0
  57. data/lib/kombo/models/shared/postintegrationsintegrationidsetuplinkrequestbody.rb +36 -0
  58. data/lib/kombo/models/shared/postintegrationsintegrationidsetuplinkrequestbody.rbi +15 -0
  59. data/lib/kombo/models/shared/postintegrationsintegrationidsetuplinkrequestbody_language.rb +24 -0
  60. data/lib/kombo/models/shared/postintegrationsintegrationidsetuplinkrequestbody_language.rbi +11 -0
  61. data/lib/kombo/models/shared/postintegrationsintegrationidsetuplinkrequestbody_link_type.rb +21 -0
  62. data/lib/kombo/models/shared/postintegrationsintegrationidsetuplinkrequestbody_link_type.rbi +11 -0
  63. data/lib/kombo/models/shared.rb +15 -1
  64. data/lib/kombo/sdkconfiguration.rb +2 -2
  65. metadata +36 -4
  66. data/lib/kombo/models/shared/visibility.rbi +0 -11
@@ -16,6 +16,8 @@ class Kombo::Models::Shared::ImportedId
16
16
  def recruitee=(str_); end
17
17
  def greenhouse(); end
18
18
  def greenhouse=(str_); end
19
+ def greenhousev3(); end
20
+ def greenhousev3=(str_); end
19
21
  def onlyfy(); end
20
22
  def onlyfy=(str_); end
21
23
  def smartrecruiters(); end
@@ -23,6 +23,7 @@ module Kombo
23
23
  RECRUITEE = new('recruitee')
24
24
  RECRUITERFLOW = new('recruiterflow')
25
25
  GREENHOUSE = new('greenhouse')
26
+ GREENHOUSEV3 = new('greenhousev3')
26
27
  GREENHOUSEJOBBOARD = new('greenhousejobboard')
27
28
  TEAMTAILOR = new('teamtailor')
28
29
  TEAMTAILORJOBBOARDS = new('teamtailorjobboards')
@@ -41,6 +42,7 @@ module Kombo
41
42
  REXX = new('rexx')
42
43
  AFAS = new('afas')
43
44
  BAMBOOHR = new('bamboohr')
45
+ BULLHORN4SALESFORCE = new('bullhorn4salesforce')
44
46
  BULLHORN = new('bullhorn')
45
47
  BULLHORNLOGIN = new('bullhornlogin')
46
48
  WORKABLE = new('workable')
@@ -80,6 +82,7 @@ module Kombo
80
82
  RECRUITCRM = new('recruitcrm')
81
83
  JAZZHR = new('jazzhr')
82
84
  BITE = new('bite')
85
+ BRASSRING = new('brassring')
83
86
  HOMERUN = new('homerun')
84
87
  MYSOLUTION = new('mysolution')
85
88
  CARERIX = new('carerix')
@@ -115,9 +118,12 @@ module Kombo
115
118
  SANDBOX = new('sandbox')
116
119
  GUIDECOM = new('guidecom')
117
120
  SPOTT = new('spott')
121
+ LOGICMELON = new('logicmelon')
118
122
  LOXO = new('loxo')
123
+ KULA = new('kula')
119
124
  WORKDAYCUSTOMREPORT = new('workdaycustomreport')
120
125
  WORKDAYCUSTOMREPORTSFTP = new('workdaycustomreportsftp')
126
+ UKGPROWFM = new('ukgprowfm')
121
127
  PAYFITCUSTOMER = new('payfitcustomer')
122
128
  PAYFITPARTNER = new('payfitpartner')
123
129
  PAYFIT = new('payfit')
@@ -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
+ # Greenhouse V3 specific remote fields for the note.
11
+ class PostAtsApplicationsApplicationIdNotesRequestBodyGreenhousev3
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # Visibility of the created note.
16
+ field :visibility, Crystalline::Nilable.new(Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyVisibility), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('visibility'), 'decoder': Utils.enum_from_string(Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyVisibility, true) } }
17
+
18
+ sig { params(visibility: T.nilable(Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyVisibility)).void }
19
+ def initialize(visibility: nil)
20
+ @visibility = visibility
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 @visibility == other.visibility
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::PostAtsApplicationsApplicationIdNotesRequestBodyGreenhousev3
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyGreenhousev3
11
+ def visibility(); end
12
+ def visibility=(str_); end
13
+ end
@@ -16,6 +16,8 @@ module Kombo
16
16
  field :teamtailor, Crystalline::Nilable.new(Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyTeamtailor), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('teamtailor') } }
17
17
  # Fields specific to Greenhouse.
18
18
  field :greenhouse, Crystalline::Nilable.new(Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyGreenhouse), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('greenhouse') } }
19
+ # Greenhouse V3 specific remote fields for the note.
20
+ field :greenhousev3, Crystalline::Nilable.new(Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyGreenhousev3), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('greenhousev3') } }
19
21
  # Recruitee specific remote fields for the note.
20
22
  field :recruitee, Crystalline::Nilable.new(Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyRecruitee), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('recruitee') } }
21
23
  # Bullhorn specific remote fields for the note.
@@ -25,10 +27,11 @@ module Kombo
25
27
  # Workable specific remote fields for ATS actions.
26
28
  field :workable, Crystalline::Nilable.new(Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyWorkable), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('workable') } }
27
29
 
28
- sig { params(teamtailor: T.nilable(Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyTeamtailor), greenhouse: T.nilable(Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyGreenhouse), recruitee: T.nilable(Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyRecruitee), bullhorn: T.nilable(Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyBullhorn), lever: T.nilable(Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyLever), workable: T.nilable(Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyWorkable)).void }
29
- def initialize(teamtailor: nil, greenhouse: nil, recruitee: nil, bullhorn: nil, lever: nil, workable: nil)
30
+ sig { params(teamtailor: T.nilable(Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyTeamtailor), greenhouse: T.nilable(Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyGreenhouse), greenhousev3: T.nilable(Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyGreenhousev3), recruitee: T.nilable(Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyRecruitee), bullhorn: T.nilable(Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyBullhorn), lever: T.nilable(Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyLever), workable: T.nilable(Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyWorkable)).void }
31
+ def initialize(teamtailor: nil, greenhouse: nil, greenhousev3: nil, recruitee: nil, bullhorn: nil, lever: nil, workable: nil)
30
32
  @teamtailor = teamtailor
31
33
  @greenhouse = greenhouse
34
+ @greenhousev3 = greenhousev3
32
35
  @recruitee = recruitee
33
36
  @bullhorn = bullhorn
34
37
  @lever = lever
@@ -40,6 +43,7 @@ module Kombo
40
43
  return false unless other.is_a? self.class
41
44
  return false unless @teamtailor == other.teamtailor
42
45
  return false unless @greenhouse == other.greenhouse
46
+ return false unless @greenhousev3 == other.greenhousev3
43
47
  return false unless @recruitee == other.recruitee
44
48
  return false unless @bullhorn == other.bullhorn
45
49
  return false unless @lever == other.lever
@@ -12,6 +12,8 @@ class Kombo::Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyRem
12
12
  def teamtailor=(str_); end
13
13
  def greenhouse(); end
14
14
  def greenhouse=(str_); end
15
+ def greenhousev3(); end
16
+ def greenhousev3=(str_); end
15
17
  def recruitee(); end
16
18
  def recruitee=(str_); end
17
19
  def bullhorn(); end
@@ -0,0 +1,22 @@
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
+ # PostAtsApplicationsApplicationIdNotesRequestBodyVisibility - Visibility of the created note.
11
+ class PostAtsApplicationsApplicationIdNotesRequestBodyVisibility < T::Enum
12
+
13
+
14
+ enums do
15
+ ADMIN_ONLY = new('admin_only')
16
+ PRIVATE = new('private')
17
+ PUBLIC = new('public')
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,11 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Kombo::Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyVisibility
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyVisibility
11
+ 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 Greenhouse V3.
11
+ class PostAtsApplicationsApplicationIdRejectRequestBodyGreenhousev3
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # Additional data fields passed through to the `rejection_email` field of Greenhouse V3's reject-application endpoint.
16
+ field :rejection_email, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::Object)), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('rejection_email') } }
17
+
18
+ sig { params(rejection_email: T.nilable(T::Hash[Symbol, ::Object])).void }
19
+ def initialize(rejection_email: nil)
20
+ @rejection_email = rejection_email
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 @rejection_email == other.rejection_email
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::PostAtsApplicationsApplicationIdRejectRequestBodyGreenhousev3
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::PostAtsApplicationsApplicationIdRejectRequestBodyGreenhousev3
11
+ def rejection_email(); end
12
+ def rejection_email=(str_); end
13
+ end
@@ -14,14 +14,17 @@ module Kombo
14
14
 
15
15
  # Fields specific to Greenhouse.
16
16
  field :greenhouse, Crystalline::Nilable.new(Models::Shared::PostAtsApplicationsApplicationIdRejectRequestBodyGreenhouse), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('greenhouse') } }
17
+ # Fields specific to Greenhouse V3.
18
+ field :greenhousev3, Crystalline::Nilable.new(Models::Shared::PostAtsApplicationsApplicationIdRejectRequestBodyGreenhousev3), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('greenhousev3') } }
17
19
  # Fields specific to Teamtailor.
18
20
  field :teamtailor, Crystalline::Nilable.new(Models::Shared::PostAtsApplicationsApplicationIdRejectRequestBodyTeamtailor), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('teamtailor') } }
19
21
  # Workable specific remote fields for ATS actions.
20
22
  field :workable, Crystalline::Nilable.new(Models::Shared::PostAtsApplicationsApplicationIdRejectRequestBodyWorkable), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('workable') } }
21
23
 
22
- sig { params(greenhouse: T.nilable(Models::Shared::PostAtsApplicationsApplicationIdRejectRequestBodyGreenhouse), teamtailor: T.nilable(Models::Shared::PostAtsApplicationsApplicationIdRejectRequestBodyTeamtailor), workable: T.nilable(Models::Shared::PostAtsApplicationsApplicationIdRejectRequestBodyWorkable)).void }
23
- def initialize(greenhouse: nil, teamtailor: nil, workable: nil)
24
+ sig { params(greenhouse: T.nilable(Models::Shared::PostAtsApplicationsApplicationIdRejectRequestBodyGreenhouse), greenhousev3: T.nilable(Models::Shared::PostAtsApplicationsApplicationIdRejectRequestBodyGreenhousev3), teamtailor: T.nilable(Models::Shared::PostAtsApplicationsApplicationIdRejectRequestBodyTeamtailor), workable: T.nilable(Models::Shared::PostAtsApplicationsApplicationIdRejectRequestBodyWorkable)).void }
25
+ def initialize(greenhouse: nil, greenhousev3: nil, teamtailor: nil, workable: nil)
24
26
  @greenhouse = greenhouse
27
+ @greenhousev3 = greenhousev3
25
28
  @teamtailor = teamtailor
26
29
  @workable = workable
27
30
  end
@@ -30,6 +33,7 @@ module Kombo
30
33
  def ==(other)
31
34
  return false unless other.is_a? self.class
32
35
  return false unless @greenhouse == other.greenhouse
36
+ return false unless @greenhousev3 == other.greenhousev3
33
37
  return false unless @teamtailor == other.teamtailor
34
38
  return false unless @workable == other.workable
35
39
  true
@@ -10,6 +10,8 @@ end
10
10
  class Kombo::Models::Shared::PostAtsApplicationsApplicationIdRejectRequestBodyRemoteFields
11
11
  def greenhouse(); end
12
12
  def greenhouse=(str_); end
13
+ def greenhousev3(); end
14
+ def greenhousev3=(str_); end
13
15
  def teamtailor(); end
14
16
  def teamtailor=(str_); end
15
17
  def workable(); 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
+ # Fields specific to Greenhouse V3 (OAuth-based connector).
11
+ class PostAtsCandidatesRequestBodyGreenhousev3
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # Additional fields passed through to Greenhouse V3's `POST /v3/candidates` request body.
16
+ field :candidate, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::Object)), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('candidate') } }
17
+ # Additional fields passed through to Greenhouse V3's `POST /v3/applications` request body.
18
+ field :application, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::Object)), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('application') } }
19
+
20
+ sig { params(candidate: T.nilable(T::Hash[Symbol, ::Object]), application: T.nilable(T::Hash[Symbol, ::Object])).void }
21
+ def initialize(candidate: nil, application: nil)
22
+ @candidate = candidate
23
+ @application = application
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 @candidate == other.candidate
30
+ return false unless @application == other.application
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::PostAtsCandidatesRequestBodyGreenhousev3
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::PostAtsCandidatesRequestBodyGreenhousev3
11
+ def candidate(); end
12
+ def candidate=(str_); end
13
+ def application(); end
14
+ def application=(str_); end
15
+ end
@@ -22,6 +22,8 @@ module Kombo
22
22
  field :teamtailor, Crystalline::Nilable.new(Models::Shared::PostAtsCandidatesRequestBodyTeamtailor), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('teamtailor') } }
23
23
  # Fields specific to Greenhouse.
24
24
  field :greenhouse, Crystalline::Nilable.new(Models::Shared::PostAtsCandidatesRequestBodyGreenhouse), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('greenhouse') } }
25
+ # Fields specific to Greenhouse V3 (OAuth-based connector).
26
+ field :greenhousev3, Crystalline::Nilable.new(Models::Shared::PostAtsCandidatesRequestBodyGreenhousev3), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('greenhousev3') } }
25
27
  # Fields specific to Lever.
26
28
  field :lever, Crystalline::Nilable.new(Models::Shared::PostAtsCandidatesRequestBodyLever), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('lever') } }
27
29
  # Workable specific remote fields for ATS actions.
@@ -59,13 +61,14 @@ module Kombo
59
61
  # Fields specific to Coveto REST.
60
62
  field :covetorest, Crystalline::Nilable.new(Models::Shared::PostAtsCandidatesRequestBodyCovetorest), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('covetorest') } }
61
63
 
62
- sig { params(successfactors: T.nilable(Models::Shared::PostAtsCandidatesRequestBodySuccessfactors), personio: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyPersonio), talentsoft: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyTalentsoft), teamtailor: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyTeamtailor), greenhouse: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyGreenhouse), lever: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyLever), workable: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyWorkable), workday: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyWorkday), zohorecruit: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyZohorecruit), bullhorn: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyBullhorn), smartrecruiters: T.nilable(Models::Shared::PostAtsCandidatesRequestBodySmartrecruiters), talentadore: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyTalentadore), guidecom: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyGuidecom), dvinci: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyDvinci), hrworks: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyHrworks), jobylon: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyJobylon), avature: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyAvature), recruitee: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyRecruitee), rexx: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyRexx), umantis: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyUmantis), piloga: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyPiloga), pinpoint: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyPinpoint), covetorest: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyCovetorest)).void }
63
- def initialize(successfactors: nil, personio: nil, talentsoft: nil, teamtailor: nil, greenhouse: 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)
64
+ sig { params(successfactors: T.nilable(Models::Shared::PostAtsCandidatesRequestBodySuccessfactors), personio: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyPersonio), talentsoft: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyTalentsoft), teamtailor: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyTeamtailor), greenhouse: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyGreenhouse), greenhousev3: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyGreenhousev3), lever: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyLever), workable: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyWorkable), workday: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyWorkday), zohorecruit: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyZohorecruit), bullhorn: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyBullhorn), smartrecruiters: T.nilable(Models::Shared::PostAtsCandidatesRequestBodySmartrecruiters), talentadore: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyTalentadore), guidecom: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyGuidecom), dvinci: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyDvinci), hrworks: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyHrworks), jobylon: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyJobylon), avature: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyAvature), recruitee: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyRecruitee), rexx: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyRexx), umantis: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyUmantis), piloga: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyPiloga), pinpoint: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyPinpoint), covetorest: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyCovetorest)).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)
64
66
  @successfactors = successfactors
65
67
  @personio = personio
66
68
  @talentsoft = talentsoft
67
69
  @teamtailor = teamtailor
68
70
  @greenhouse = greenhouse
71
+ @greenhousev3 = greenhousev3
69
72
  @lever = lever
70
73
  @workable = workable
71
74
  @workday = workday
@@ -94,6 +97,7 @@ module Kombo
94
97
  return false unless @talentsoft == other.talentsoft
95
98
  return false unless @teamtailor == other.teamtailor
96
99
  return false unless @greenhouse == other.greenhouse
100
+ return false unless @greenhousev3 == other.greenhousev3
97
101
  return false unless @lever == other.lever
98
102
  return false unless @workable == other.workable
99
103
  return false unless @workday == other.workday
@@ -18,6 +18,8 @@ class Kombo::Models::Shared::PostAtsCandidatesRequestBodyRemoteFields
18
18
  def teamtailor=(str_); end
19
19
  def greenhouse(); end
20
20
  def greenhouse=(str_); end
21
+ def greenhousev3(); end
22
+ def greenhousev3=(str_); end
21
23
  def lever(); end
22
24
  def lever=(str_); end
23
25
  def workable(); 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 PostAtsImportTrackedApplicationPositiveResponseGreenhousev3ApplicationID
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # Uses the V3 `/v3/applications/{id}` endpoint to retrieve the application.
16
+ field :id_type, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('id_type'), required: true } }
17
+
18
+ field :application_id, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('application_id'), required: true } }
19
+
20
+ sig { params(id_type: ::String, application_id: ::String).void }
21
+ def initialize(id_type:, application_id:)
22
+ unless id_type == 'application_id'
23
+ raise ArgumentError, 'Invalid value for id_type'
24
+ end
25
+ @id_type = 'application_id'
26
+ @application_id = application_id
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 @id_type == other.id_type
33
+ return false unless @application_id == other.application_id
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::PostAtsImportTrackedApplicationPositiveResponseGreenhousev3ApplicationID
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::PostAtsImportTrackedApplicationPositiveResponseGreenhousev3ApplicationID
11
+ def id_type(); end
12
+ def id_type=(str_); end
13
+ def application_id(); end
14
+ def application_id=(str_); end
15
+ 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 PostAtsImportTrackedApplicationPositiveResponseGreenhousev3Union
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::PostAtsImportTrackedApplicationPositiveResponseGreenhousev3Union
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::PostAtsImportTrackedApplicationPositiveResponseGreenhousev3Union
11
+ end
@@ -21,6 +21,8 @@ module Kombo
21
21
 
22
22
  field :greenhouse, Crystalline::Nilable.new(Models::Shared::PostAtsImportTrackedApplicationRequestBodyGreenhouseApplicationID), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('greenhouse') } }
23
23
 
24
+ field :greenhousev3, Crystalline::Nilable.new(Models::Shared::PostAtsImportTrackedApplicationRequestBodyGreenhousev3ApplicationID), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('greenhousev3') } }
25
+
24
26
  field :onlyfy, Crystalline::Nilable.new(Models::Shared::PostAtsImportTrackedApplicationRequestBodyOnlyfyApplicationID), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('onlyfy') } }
25
27
 
26
28
  field :smartrecruiters, Crystalline::Nilable.new(Models::Shared::PostAtsImportTrackedApplicationRequestBodySmartrecruitersCandidateAndJobRemoteIds), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('smartrecruiters') } }
@@ -28,12 +30,13 @@ module Kombo
28
30
  # https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString
29
31
  field :tracked_at, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('tracked_at'), required: true, 'decoder': Utils.datetime_from_iso_format(false) } }
30
32
 
31
- sig { params(erecruiter: T.nilable(T.any(Models::Shared::PostAtsImportTrackedApplicationRequestBodyErecruiterApplicationAndJobRemoteIds, Models::Shared::PostAtsImportTrackedApplicationRequestBodyErecruiterApplicationAndCandidateRemoteIds)), successfactors: T.nilable(Models::Shared::PostAtsImportTrackedApplicationRequestBodySuccessfactorsApplicationRemoteID), recruitee: T.nilable(Models::Shared::PostAtsImportTrackedApplicationRequestBodyRecruiteePlacementID), greenhouse: T.nilable(Models::Shared::PostAtsImportTrackedApplicationRequestBodyGreenhouseApplicationID), onlyfy: T.nilable(Models::Shared::PostAtsImportTrackedApplicationRequestBodyOnlyfyApplicationID), smartrecruiters: T.nilable(Models::Shared::PostAtsImportTrackedApplicationRequestBodySmartrecruitersCandidateAndJobRemoteIds), tracked_at: T.nilable(::DateTime)).void }
32
- def initialize(erecruiter: nil, successfactors: nil, recruitee: nil, greenhouse: nil, onlyfy: nil, smartrecruiters: nil, tracked_at: nil)
33
+ sig { params(erecruiter: T.nilable(T.any(Models::Shared::PostAtsImportTrackedApplicationRequestBodyErecruiterApplicationAndJobRemoteIds, Models::Shared::PostAtsImportTrackedApplicationRequestBodyErecruiterApplicationAndCandidateRemoteIds)), successfactors: T.nilable(Models::Shared::PostAtsImportTrackedApplicationRequestBodySuccessfactorsApplicationRemoteID), recruitee: T.nilable(Models::Shared::PostAtsImportTrackedApplicationRequestBodyRecruiteePlacementID), greenhouse: T.nilable(Models::Shared::PostAtsImportTrackedApplicationRequestBodyGreenhouseApplicationID), greenhousev3: T.nilable(Models::Shared::PostAtsImportTrackedApplicationRequestBodyGreenhousev3ApplicationID), onlyfy: T.nilable(Models::Shared::PostAtsImportTrackedApplicationRequestBodyOnlyfyApplicationID), smartrecruiters: T.nilable(Models::Shared::PostAtsImportTrackedApplicationRequestBodySmartrecruitersCandidateAndJobRemoteIds), tracked_at: T.nilable(::DateTime)).void }
34
+ def initialize(erecruiter: nil, successfactors: nil, recruitee: nil, greenhouse: nil, greenhousev3: nil, onlyfy: nil, smartrecruiters: nil, tracked_at: nil)
33
35
  @erecruiter = erecruiter
34
36
  @successfactors = successfactors
35
37
  @recruitee = recruitee
36
38
  @greenhouse = greenhouse
39
+ @greenhousev3 = greenhousev3
37
40
  @onlyfy = onlyfy
38
41
  @smartrecruiters = smartrecruiters
39
42
  @tracked_at = tracked_at
@@ -46,6 +49,7 @@ module Kombo
46
49
  return false unless @successfactors == other.successfactors
47
50
  return false unless @recruitee == other.recruitee
48
51
  return false unless @greenhouse == other.greenhouse
52
+ return false unless @greenhousev3 == other.greenhousev3
49
53
  return false unless @onlyfy == other.onlyfy
50
54
  return false unless @smartrecruiters == other.smartrecruiters
51
55
  return false unless @tracked_at == other.tracked_at
@@ -16,6 +16,8 @@ class Kombo::Models::Shared::PostAtsImportTrackedApplicationRequestBody
16
16
  def recruitee=(str_); end
17
17
  def greenhouse(); end
18
18
  def greenhouse=(str_); end
19
+ def greenhousev3(); end
20
+ def greenhousev3=(str_); end
19
21
  def onlyfy(); end
20
22
  def onlyfy=(str_); end
21
23
  def smartrecruiters(); 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 PostAtsImportTrackedApplicationRequestBodyGreenhousev3ApplicationID
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # Uses the V3 `/v3/applications/{id}` endpoint to retrieve the application.
16
+ field :id_type, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('id_type'), required: true } }
17
+
18
+ field :application_id, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('application_id'), required: true } }
19
+
20
+ sig { params(id_type: ::String, application_id: ::String).void }
21
+ def initialize(id_type:, application_id:)
22
+ unless id_type == 'application_id'
23
+ raise ArgumentError, 'Invalid value for id_type'
24
+ end
25
+ @id_type = 'application_id'
26
+ @application_id = application_id
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 @id_type == other.id_type
33
+ return false unless @application_id == other.application_id
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::PostAtsImportTrackedApplicationRequestBodyGreenhousev3ApplicationID
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::PostAtsImportTrackedApplicationRequestBodyGreenhousev3ApplicationID
11
+ def id_type(); end
12
+ def id_type=(str_); end
13
+ def application_id(); end
14
+ def application_id=(str_); end
15
+ 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 PostAtsImportTrackedApplicationRequestBodyGreenhousev3Union
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::PostAtsImportTrackedApplicationRequestBodyGreenhousev3Union
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::PostAtsImportTrackedApplicationRequestBodyGreenhousev3Union
11
+ 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
+ # Fields specific to Greenhouse V3 (OAuth-based connector).
11
+ class PostAtsJobsJobIdApplicationsRequestBodyGreenhousev3
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # Additional fields passed through to Greenhouse V3's `POST /v3/candidates` request body.
16
+ field :candidate, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::Object)), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('candidate') } }
17
+ # Additional fields passed through to Greenhouse V3's `POST /v3/applications` request body.
18
+ field :application, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::Object)), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('application') } }
19
+
20
+ sig { params(candidate: T.nilable(T::Hash[Symbol, ::Object]), application: T.nilable(T::Hash[Symbol, ::Object])).void }
21
+ def initialize(candidate: nil, application: nil)
22
+ @candidate = candidate
23
+ @application = application
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 @candidate == other.candidate
30
+ return false unless @application == other.application
31
+ true
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end