kombo 1.0.3 → 1.0.5
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.
- checksums.yaml +4 -4
- data/lib/kombo/ats.rb +157 -1
- data/lib/kombo/general.rb +18 -5
- data/lib/kombo/hris.rb +165 -8
- data/lib/kombo/models/operations/getatsapplications_request.rb +9 -0
- data/lib/kombo/models/operations/getatsapplicationstages_request.rb +2 -0
- data/lib/kombo/models/operations/getatscandidates_request.rb +8 -0
- data/lib/kombo/models/operations/getatsinterviews_request.rb +8 -0
- data/lib/kombo/models/operations/getatsjobs_request.rb +11 -0
- data/lib/kombo/models/operations/getatsoffers_request.rb +6 -0
- data/lib/kombo/models/operations/getatsrejectionreasons_request.rb +2 -0
- data/lib/kombo/models/operations/getatsroles_request.rb +75 -0
- data/lib/kombo/models/operations/getatsroles_request.rbi +29 -0
- data/lib/kombo/models/operations/getatsroles_response.rb +56 -0
- data/lib/kombo/models/operations/getatsroles_response.rbi +19 -0
- data/lib/kombo/models/operations/getatstags_request.rb +2 -0
- data/lib/kombo/models/operations/getatsusers_request.rb +5 -0
- data/lib/kombo/models/operations/gethrisabsences_request.rb +4 -0
- data/lib/kombo/models/operations/gethrisabsencetypes_request.rb +2 -0
- data/lib/kombo/models/operations/gethrisemployeedocumentcategories_request.rb +2 -0
- data/lib/kombo/models/operations/gethrisemployees_request.rb +10 -0
- data/lib/kombo/models/operations/gethrisemployments_request.rb +2 -0
- data/lib/kombo/models/operations/gethrisgroups_request.rb +2 -0
- data/lib/kombo/models/operations/gethrislegalentities_request.rb +2 -0
- data/lib/kombo/models/operations/gethrislocations_request.rb +2 -0
- data/lib/kombo/models/operations/gethrisperformancereviewcycles_request.rb +2 -0
- data/lib/kombo/models/operations/gethrisperformancereviews_request.rb +6 -0
- data/lib/kombo/models/operations/gethrisstaffingentities_request.rb +85 -0
- data/lib/kombo/models/operations/gethrisstaffingentities_request.rbi +31 -0
- data/lib/kombo/models/operations/gethrisstaffingentities_response.rb +56 -0
- data/lib/kombo/models/operations/gethrisstaffingentities_response.rbi +19 -0
- data/lib/kombo/models/operations/gethristimeoffbalances_request.rb +4 -0
- data/lib/kombo/models/operations/gethristimesheets_request.rb +2 -0
- data/lib/kombo/models/operations.rb +4 -0
- data/lib/kombo/models/shared/assessmentorderreceivedwebhookpayload_hiring_team.rb +6 -6
- data/lib/kombo/models/shared/assessmentorderreceivedwebhookpayload_hiring_team.rbi +2 -2
- data/lib/kombo/models/shared/assessmentorderreceivedwebhookpayload_hiring_team_role.rb +3 -0
- data/lib/kombo/models/shared/getassessmentordersopenpositiveresponse_hiring_team.rb +6 -6
- data/lib/kombo/models/shared/getassessmentordersopenpositiveresponse_hiring_team.rbi +2 -2
- data/lib/kombo/models/shared/getassessmentordersopenpositiveresponse_hiring_team_role.rb +3 -0
- data/lib/kombo/models/shared/getatsjobspositiveresponse_hiring_team.rb +13 -3
- data/lib/kombo/models/shared/getatsjobspositiveresponse_hiring_team.rbi +2 -0
- data/lib/kombo/models/shared/getatsjobspositiveresponse_hiring_team_role.rb +3 -0
- data/lib/kombo/models/shared/getatsjobspositiveresponse_scope.rb +21 -0
- data/lib/kombo/models/shared/getatsjobspositiveresponse_scope.rbi +11 -0
- data/lib/kombo/models/shared/getatsjobspositiveresponse_unified_type.rb +25 -0
- data/lib/kombo/models/shared/getatsjobspositiveresponse_unified_type.rbi +11 -0
- data/lib/kombo/models/shared/getatsrolespositiveresponse.rb +39 -0
- data/lib/kombo/models/shared/getatsrolespositiveresponse.rbi +15 -0
- data/lib/kombo/models/shared/getatsrolespositiveresponse_data.rb +36 -0
- data/lib/kombo/models/shared/getatsrolespositiveresponse_data.rbi +15 -0
- data/lib/kombo/models/shared/getatsrolespositiveresponse_result.rb +58 -0
- data/lib/kombo/models/shared/getatsrolespositiveresponse_result.rbi +25 -0
- data/lib/kombo/models/shared/getatsrolespositiveresponse_scope.rb +21 -0
- data/lib/kombo/models/shared/getatsrolespositiveresponse_scope.rbi +11 -0
- data/lib/kombo/models/shared/getatsrolespositiveresponse_unified_type.rb +25 -0
- data/lib/kombo/models/shared/getatsrolespositiveresponse_unified_type.rbi +11 -0
- data/lib/kombo/models/shared/getatsuserspositiveresponse_result.rb +10 -2
- data/lib/kombo/models/shared/getatsuserspositiveresponse_result.rbi +2 -0
- data/lib/kombo/models/shared/getatsuserspositiveresponse_scope.rb +21 -0
- data/lib/kombo/models/shared/getatsuserspositiveresponse_scope.rbi +11 -0
- data/lib/kombo/models/shared/getatsuserspositiveresponse_unified_type.rb +25 -0
- data/lib/kombo/models/shared/getatsuserspositiveresponse_unified_type.rbi +11 -0
- data/lib/kombo/models/shared/{group.rb → gethrisemployeespositiveresponse_group.rb} +3 -3
- data/lib/kombo/models/shared/{group.rbi → gethrisemployeespositiveresponse_group.rbi} +2 -2
- data/lib/kombo/models/shared/{group_type.rb → gethrisemployeespositiveresponse_group_type.rb} +2 -2
- data/lib/kombo/models/shared/gethrisemployeespositiveresponse_group_type.rbi +11 -0
- data/lib/kombo/models/shared/{legal_entity.rb → gethrisemployeespositiveresponse_legal_entity.rb} +1 -1
- data/lib/kombo/models/shared/{legal_entity.rbi → gethrisemployeespositiveresponse_legal_entity.rbi} +2 -2
- data/lib/kombo/models/shared/gethrisemployeespositiveresponse_result.rb +3 -3
- data/lib/kombo/models/shared/gethrisstaffingentitiespositiveresponse.rb +39 -0
- data/lib/kombo/models/shared/gethrisstaffingentitiespositiveresponse.rbi +15 -0
- data/lib/kombo/models/shared/gethrisstaffingentitiespositiveresponse_data.rb +36 -0
- data/lib/kombo/models/shared/gethrisstaffingentitiespositiveresponse_data.rbi +15 -0
- data/lib/kombo/models/shared/gethrisstaffingentitiespositiveresponse_employment_type.rb +36 -0
- data/lib/kombo/models/shared/gethrisstaffingentitiespositiveresponse_employment_type.rbi +15 -0
- data/lib/kombo/models/shared/gethrisstaffingentitiespositiveresponse_group.rb +44 -0
- data/lib/kombo/models/shared/gethrisstaffingentitiespositiveresponse_group.rbi +19 -0
- data/lib/kombo/models/shared/gethrisstaffingentitiespositiveresponse_legal_entity.rb +40 -0
- data/lib/kombo/models/shared/gethrisstaffingentitiespositiveresponse_legal_entity.rbi +17 -0
- data/lib/kombo/models/shared/gethrisstaffingentitiespositiveresponse_location.rb +44 -0
- data/lib/kombo/models/shared/gethrisstaffingentitiespositiveresponse_location.rbi +19 -0
- data/lib/kombo/models/shared/gethrisstaffingentitiespositiveresponse_result.rb +110 -0
- data/lib/kombo/models/shared/gethrisstaffingentitiespositiveresponse_result.rbi +47 -0
- data/lib/kombo/models/shared/gethrisstaffingentitiespositiveresponse_status.rb +31 -0
- data/lib/kombo/models/shared/gethrisstaffingentitiespositiveresponse_status.rbi +11 -0
- data/lib/kombo/models/shared/gethrisstaffingentitiespositiveresponse_type.rb +22 -0
- data/lib/kombo/models/shared/gethrisstaffingentitiespositiveresponse_type.rbi +11 -0
- data/lib/kombo/models/shared/gethrisstaffingentitiespositiveresponse_unified_type.rb +27 -0
- data/lib/kombo/models/shared/gethrisstaffingentitiespositiveresponse_unified_type.rbi +11 -0
- data/lib/kombo/models/shared/inlineassessmentorderreceivedwebhookpayload_hiring_team.rb +6 -6
- data/lib/kombo/models/shared/inlineassessmentorderreceivedwebhookpayload_hiring_team.rbi +2 -2
- data/lib/kombo/models/shared/inlineassessmentorderreceivedwebhookpayload_hiring_team_role.rb +3 -0
- data/lib/kombo/models/shared/integration_tool.rb +4 -0
- data/lib/kombo/models/shared/job_role.rb +44 -0
- data/lib/kombo/models/shared/job_role.rbi +19 -0
- data/lib/kombo/models/shared/komboatserror_code.rb +1 -0
- data/lib/kombo/models/shared/kombogeneralerror_code.rb +1 -0
- data/lib/kombo/models/shared/kombohriserror_code.rb +1 -0
- data/lib/kombo/models/shared/model_type.rb +22 -0
- data/lib/kombo/models/shared/{group_type.rbi → model_type.rbi} +2 -2
- data/lib/kombo/models/shared/name.rb +7 -0
- data/lib/kombo/models/shared/postatsapplicationsapplicationidnotesrequestbody_lever.rb +32 -0
- data/lib/kombo/models/shared/postatsapplicationsapplicationidnotesrequestbody_lever.rbi +13 -0
- data/lib/kombo/models/shared/postatsapplicationsapplicationidnotesrequestbody_remote_fields.rb +6 -2
- data/lib/kombo/models/shared/postatsapplicationsapplicationidnotesrequestbody_remote_fields.rbi +2 -0
- data/lib/kombo/models/shared/postatscandidatesrequestbody_consent_decisions.rb +48 -0
- data/lib/kombo/models/shared/postatscandidatesrequestbody_consent_decisions.rbi +21 -0
- data/lib/kombo/models/shared/postatscandidatesrequestbody_dvinci.rb +6 -2
- data/lib/kombo/models/shared/postatscandidatesrequestbody_dvinci.rbi +2 -0
- data/lib/kombo/models/shared/postatscandidatesrequestbody_remote_fields.rb +6 -2
- data/lib/kombo/models/shared/postatscandidatesrequestbody_remote_fields.rbi +2 -0
- data/lib/kombo/models/shared/postatscandidatesrequestbody_rexx.rb +32 -0
- data/lib/kombo/models/shared/postatscandidatesrequestbody_rexx.rbi +13 -0
- data/lib/kombo/models/shared/postatscandidatesrequestbody_smartrecruiters.rb +6 -2
- data/lib/kombo/models/shared/postatscandidatesrequestbody_smartrecruiters.rbi +2 -0
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_consent_decisions.rb +48 -0
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_consent_decisions.rbi +21 -0
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_dvinci.rb +6 -2
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_dvinci.rbi +2 -0
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_remote_fields.rb +6 -2
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_remote_fields.rbi +2 -0
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_rexx.rb +32 -0
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_rexx.rbi +13 -0
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_smartrecruiters.rb +6 -2
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_smartrecruiters.rbi +2 -0
- data/lib/kombo/models/shared/putassessmentordersassessmentorderidresultrequestbody_recruitee.rb +32 -0
- data/lib/kombo/models/shared/putassessmentordersassessmentorderidresultrequestbody_recruitee.rbi +13 -0
- data/lib/kombo/models/shared/putassessmentordersassessmentorderidresultrequestbody_remote_fields.rb +6 -2
- data/lib/kombo/models/shared/putassessmentordersassessmentorderidresultrequestbody_remote_fields.rbi +2 -0
- data/lib/kombo/models/shared/putatsapplicationsapplicationidstagerequestbody_remote_fields.rb +6 -2
- data/lib/kombo/models/shared/putatsapplicationsapplicationidstagerequestbody_remote_fields.rbi +2 -0
- data/lib/kombo/models/shared/putatsapplicationsapplicationidstagerequestbody_workday.rb +36 -0
- data/lib/kombo/models/shared/putatsapplicationsapplicationidstagerequestbody_workday.rbi +15 -0
- data/lib/kombo/models/shared/step_type.rb +21 -0
- data/lib/kombo/models/shared/step_type.rbi +11 -0
- data/lib/kombo/models/shared/system_role.rb +44 -0
- data/lib/kombo/models/shared/system_role.rbi +19 -0
- data/lib/kombo/models/shared.rb +33 -3
- data/lib/kombo/sdkconfiguration.rb +2 -2
- metadata +76 -8
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Kombo::Models::Shared::GetHrisStaffingEntitiesPositiveResponseType
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Kombo::Models::Shared::GetHrisStaffingEntitiesPositiveResponseType
|
|
11
|
+
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
|
+
# GetHrisStaffingEntitiesPositiveResponseUnifiedType - The unified type, how Kombo categorize this label.
|
|
11
|
+
class GetHrisStaffingEntitiesPositiveResponseUnifiedType < T::Enum
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
enums do
|
|
15
|
+
FULL_TIME = new('FULL_TIME')
|
|
16
|
+
PART_TIME = new('PART_TIME')
|
|
17
|
+
CONTRACT = new('CONTRACT')
|
|
18
|
+
INTERNSHIP = new('INTERNSHIP')
|
|
19
|
+
FREELANCE = new('FREELANCE')
|
|
20
|
+
WORKING_STUDENT = new('WORKING_STUDENT')
|
|
21
|
+
APPRENTICESHIP = new('APPRENTICESHIP')
|
|
22
|
+
TRAINING = new('TRAINING')
|
|
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::GetHrisStaffingEntitiesPositiveResponseUnifiedType
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Kombo::Models::Shared::GetHrisStaffingEntitiesPositiveResponseUnifiedType
|
|
11
|
+
end
|
|
@@ -12,10 +12,10 @@ module Kombo
|
|
|
12
12
|
extend T::Sig
|
|
13
13
|
include Crystalline::MetadataFields
|
|
14
14
|
|
|
15
|
-
# The team member's identifier in the integrated system.
|
|
16
|
-
field :remote_id, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('remote_id'), required: true } }
|
|
17
15
|
# Array of the roles of the user for this specific job. Currently only `RECRUITER` and `HIRING_MANAGER` are mapped into our unified schema.
|
|
18
16
|
field :hiring_team_roles, Crystalline::Array.new(Models::Shared::InlineAssessmentOrderReceivedWebhookPayloadHiringTeamRole), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('hiring_team_roles'), required: true } }
|
|
17
|
+
# The team member's identifier in the integrated system.
|
|
18
|
+
field :remote_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('remote_id'), required: true } }
|
|
19
19
|
# The team member's email address.
|
|
20
20
|
field :email, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('email'), required: true } }
|
|
21
21
|
# The team member's first name.
|
|
@@ -23,10 +23,10 @@ module Kombo
|
|
|
23
23
|
# The team member's last name.
|
|
24
24
|
field :last_name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('last_name'), required: true } }
|
|
25
25
|
|
|
26
|
-
sig { params(
|
|
27
|
-
def initialize(
|
|
28
|
-
@remote_id = remote_id
|
|
26
|
+
sig { params(hiring_team_roles: T::Array[Models::Shared::InlineAssessmentOrderReceivedWebhookPayloadHiringTeamRole], remote_id: T.nilable(::String), email: T.nilable(::String), first_name: T.nilable(::String), last_name: T.nilable(::String)).void }
|
|
27
|
+
def initialize(hiring_team_roles:, remote_id: nil, email: nil, first_name: nil, last_name: nil)
|
|
29
28
|
@hiring_team_roles = hiring_team_roles
|
|
29
|
+
@remote_id = remote_id
|
|
30
30
|
@email = email
|
|
31
31
|
@first_name = first_name
|
|
32
32
|
@last_name = last_name
|
|
@@ -35,8 +35,8 @@ module Kombo
|
|
|
35
35
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
36
36
|
def ==(other)
|
|
37
37
|
return false unless other.is_a? self.class
|
|
38
|
-
return false unless @remote_id == other.remote_id
|
|
39
38
|
return false unless @hiring_team_roles == other.hiring_team_roles
|
|
39
|
+
return false unless @remote_id == other.remote_id
|
|
40
40
|
return false unless @email == other.email
|
|
41
41
|
return false unless @first_name == other.first_name
|
|
42
42
|
return false unless @last_name == other.last_name
|
|
@@ -8,10 +8,10 @@ end
|
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
class Kombo::Models::Shared::InlineAssessmentOrderReceivedWebhookPayloadHiringTeam
|
|
11
|
-
def remote_id(); end
|
|
12
|
-
def remote_id=(str_); end
|
|
13
11
|
def hiring_team_roles(); end
|
|
14
12
|
def hiring_team_roles=(str_); end
|
|
13
|
+
def remote_id(); end
|
|
14
|
+
def remote_id=(str_); end
|
|
15
15
|
def email(); end
|
|
16
16
|
def email=(str_); end
|
|
17
17
|
def first_name(); end
|
|
@@ -77,6 +77,7 @@ module Kombo
|
|
|
77
77
|
PARADOX = new('paradox')
|
|
78
78
|
HEYRECRUIT = new('heyrecruit')
|
|
79
79
|
RECRUHR = new('recruhr')
|
|
80
|
+
RECRUITCRM = new('recruitcrm')
|
|
80
81
|
JAZZHR = new('jazzhr')
|
|
81
82
|
BITE = new('bite')
|
|
82
83
|
HOMERUN = new('homerun')
|
|
@@ -106,6 +107,7 @@ module Kombo
|
|
|
106
107
|
BREEZYHR = new('breezyhr')
|
|
107
108
|
FLATCHR = new('flatchr')
|
|
108
109
|
DAYFORCE = new('dayforce')
|
|
110
|
+
DIGITALRECRUITERS = new('digitalrecruiters')
|
|
109
111
|
APPLICANTSTACK = new('applicantstack')
|
|
110
112
|
REACHMEE = new('reachmee')
|
|
111
113
|
TALENTADORE = new('talentadore')
|
|
@@ -154,6 +156,7 @@ module Kombo
|
|
|
154
156
|
LATTICETALENT = new('latticetalent')
|
|
155
157
|
HOORAYHR = new('hoorayhr')
|
|
156
158
|
TRINET = new('trinet')
|
|
159
|
+
TRINETPEO = new('trinetpeo')
|
|
157
160
|
NAMELY = new('namely')
|
|
158
161
|
PAYCOM = new('paycom')
|
|
159
162
|
INSPERITY = new('insperity')
|
|
@@ -190,6 +193,7 @@ module Kombo
|
|
|
190
193
|
SFTP = new('sftp')
|
|
191
194
|
SFTPFETCH = new('sftpfetch')
|
|
192
195
|
THREE_HUNDRED_AND_SIXTYLEARNING = new('360learning')
|
|
196
|
+
TALENTLMS = new('talentlms')
|
|
193
197
|
UDEMY = new('udemy')
|
|
194
198
|
LINKEDINLEARNING = new('linkedinlearning')
|
|
195
199
|
end
|
|
@@ -0,0 +1,44 @@
|
|
|
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 JobRole
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# 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.
|
|
16
|
+
field :remote_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('remote_id'), required: true } }
|
|
17
|
+
# The label of the role.
|
|
18
|
+
field :remote_label, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('remote_label'), required: true } }
|
|
19
|
+
# Whether the role applies globally or is scoped to a specific job.
|
|
20
|
+
field :scope, Crystalline::Nilable.new(Models::Shared::GetAtsJobsPositiveResponseScope), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('scope'), required: true, 'decoder': Utils.enum_from_string(Models::Shared::GetAtsJobsPositiveResponseScope, false) } }
|
|
21
|
+
# Unified role type if Kombo can map it.
|
|
22
|
+
field :unified_type, Crystalline::Nilable.new(Models::Shared::GetAtsJobsPositiveResponseUnifiedType), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('unified_type'), required: true, 'decoder': Utils.enum_from_string(Models::Shared::GetAtsJobsPositiveResponseUnifiedType, false) } }
|
|
23
|
+
|
|
24
|
+
sig { params(remote_id: T.nilable(::String), remote_label: T.nilable(::String), scope: T.nilable(Models::Shared::GetAtsJobsPositiveResponseScope), unified_type: T.nilable(Models::Shared::GetAtsJobsPositiveResponseUnifiedType)).void }
|
|
25
|
+
def initialize(remote_id: nil, remote_label: nil, scope: nil, unified_type: nil)
|
|
26
|
+
@remote_id = remote_id
|
|
27
|
+
@remote_label = remote_label
|
|
28
|
+
@scope = scope
|
|
29
|
+
@unified_type = unified_type
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
33
|
+
def ==(other)
|
|
34
|
+
return false unless other.is_a? self.class
|
|
35
|
+
return false unless @remote_id == other.remote_id
|
|
36
|
+
return false unless @remote_label == other.remote_label
|
|
37
|
+
return false unless @scope == other.scope
|
|
38
|
+
return false unless @unified_type == other.unified_type
|
|
39
|
+
true
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
end
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Kombo::Models::Shared::JobRole
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Kombo::Models::Shared::JobRole
|
|
11
|
+
def remote_id(); end
|
|
12
|
+
def remote_id=(str_); end
|
|
13
|
+
def remote_label(); end
|
|
14
|
+
def remote_label=(str_); end
|
|
15
|
+
def scope(); end
|
|
16
|
+
def scope=(str_); end
|
|
17
|
+
def unified_type(); end
|
|
18
|
+
def unified_type=(str_); end
|
|
19
|
+
end
|
|
@@ -13,6 +13,7 @@ module Kombo
|
|
|
13
13
|
|
|
14
14
|
enums do
|
|
15
15
|
PLATFORM_RATE_LIMIT_EXCEEDED = new('PLATFORM.RATE_LIMIT_EXCEEDED')
|
|
16
|
+
PLATFORM_CONCURRENCY_LIMIT_EXCEEDED = new('PLATFORM.CONCURRENCY_LIMIT_EXCEEDED')
|
|
16
17
|
PLATFORM_INTEGRATION_NOT_FOUND = new('PLATFORM.INTEGRATION_NOT_FOUND')
|
|
17
18
|
PLATFORM_INPUT_INVALID = new('PLATFORM.INPUT_INVALID')
|
|
18
19
|
PLATFORM_UNKNOWN_ERROR = new('PLATFORM.UNKNOWN_ERROR')
|
|
@@ -13,6 +13,7 @@ module Kombo
|
|
|
13
13
|
|
|
14
14
|
enums do
|
|
15
15
|
PLATFORM_RATE_LIMIT_EXCEEDED = new('PLATFORM.RATE_LIMIT_EXCEEDED')
|
|
16
|
+
PLATFORM_CONCURRENCY_LIMIT_EXCEEDED = new('PLATFORM.CONCURRENCY_LIMIT_EXCEEDED')
|
|
16
17
|
PLATFORM_INTEGRATION_NOT_FOUND = new('PLATFORM.INTEGRATION_NOT_FOUND')
|
|
17
18
|
PLATFORM_INPUT_INVALID = new('PLATFORM.INPUT_INVALID')
|
|
18
19
|
PLATFORM_UNKNOWN_ERROR = new('PLATFORM.UNKNOWN_ERROR')
|
|
@@ -13,6 +13,7 @@ module Kombo
|
|
|
13
13
|
|
|
14
14
|
enums do
|
|
15
15
|
PLATFORM_RATE_LIMIT_EXCEEDED = new('PLATFORM.RATE_LIMIT_EXCEEDED')
|
|
16
|
+
PLATFORM_CONCURRENCY_LIMIT_EXCEEDED = new('PLATFORM.CONCURRENCY_LIMIT_EXCEEDED')
|
|
16
17
|
PLATFORM_INTEGRATION_NOT_FOUND = new('PLATFORM.INTEGRATION_NOT_FOUND')
|
|
17
18
|
PLATFORM_INPUT_INVALID = new('PLATFORM.INPUT_INVALID')
|
|
18
19
|
PLATFORM_UNKNOWN_ERROR = new('PLATFORM.UNKNOWN_ERROR')
|
|
@@ -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
|
+
# ModelType - The remote model type of the record. Possible values are "JOB", "POSITION" or "REQUISITION". We recommend that users of our `create employee` endpoint ask the customer whether they want to hire into positions or requisitions.
|
|
11
|
+
class ModelType < T::Enum
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
enums do
|
|
15
|
+
JOB = new('JOB')
|
|
16
|
+
POSITION = new('POSITION')
|
|
17
|
+
REQUISITION = new('REQUISITION')
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
# frozen_string_literal: true
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
class Kombo::Models::Shared::
|
|
5
|
+
class Kombo::Models::Shared::ModelType
|
|
6
6
|
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
7
|
end
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
class Kombo::Models::Shared::
|
|
10
|
+
class Kombo::Models::Shared::ModelType
|
|
11
11
|
end
|
|
@@ -24,6 +24,7 @@ module Kombo
|
|
|
24
24
|
HRIS_EMPLOYEE_DOCUMENT_CATEGORIES = new('hris_employee_document_categories')
|
|
25
25
|
HRIS_PERFORMANCE_REVIEWS = new('hris_performance_reviews')
|
|
26
26
|
HRIS_PERFORMANCE_REVIEW_CYCLES = new('hris_performance_review_cycles')
|
|
27
|
+
HRIS_STAFFING_ENTITIES = new('hris_staffing_entities')
|
|
27
28
|
ATS_USERS = new('ats_users')
|
|
28
29
|
ATS_JOBS = new('ats_jobs')
|
|
29
30
|
ATS_JOB_POSTINGS = new('ats_job_postings')
|
|
@@ -35,6 +36,7 @@ module Kombo
|
|
|
35
36
|
ATS_INTERVIEWS = new('ats_interviews')
|
|
36
37
|
ATS_OFFERS = new('ats_offers')
|
|
37
38
|
ATS_REJECTION_REASONS = new('ats_rejection_reasons')
|
|
39
|
+
ATS_ROLES = new('ats_roles')
|
|
38
40
|
LMS_USERS = new('lms_users')
|
|
39
41
|
LMS_COURSE_PROVIDERS = new('lms_course_providers')
|
|
40
42
|
LMS_SKILLS = new('lms_skills')
|
|
@@ -42,10 +44,15 @@ module Kombo
|
|
|
42
44
|
LMS_COURSE_REVISIONS = new('lms_course_revisions')
|
|
43
45
|
LMS_COURSE_PROGRESSIONS = new('lms_course_progressions')
|
|
44
46
|
HRIS_JOIN_EMPLOYEES_TEAMS = new('hris_join_employees_teams')
|
|
47
|
+
HRIS_JOIN_STAFFING_ENTITIES_LOCATIONS = new('hris_join_staffing_entities_locations')
|
|
48
|
+
HRIS_JOIN_STAFFING_ENTITIES_LEGAL_ENTITIES = new('hris_join_staffing_entities_legal_entities')
|
|
49
|
+
HRIS_JOIN_STAFFING_ENTITIES_GROUPS = new('hris_join_staffing_entities_groups')
|
|
45
50
|
ATS_JOIN_CANDIDATES_TAGS = new('ats_join_candidates_tags')
|
|
46
51
|
ATS_JOIN_JOBS_APPLICATION_STAGES = new('ats_join_jobs_application_stages')
|
|
47
52
|
ATS_JOIN_JOBS_SCREENING_QUESTIONS = new('ats_join_jobs_screening_questions')
|
|
53
|
+
ATS_JOIN_USER_JOB_ROLE_ASSIGNMENTS = new('ats_join_user_job_role_assignments')
|
|
48
54
|
ATS_JOIN_JOBS_USERS = new('ats_join_jobs_users')
|
|
55
|
+
ATS_JOIN_USERS_ROLES = new('ats_join_users_roles')
|
|
49
56
|
ATS_JOIN_INTERVIEWS_USERS = new('ats_join_interviews_users')
|
|
50
57
|
LMS_JOIN_REVISIONS_SKILLS = new('lms_join_revisions_skills')
|
|
51
58
|
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
|
+
# Lever specific remote fields for the note.
|
|
11
|
+
class PostAtsApplicationsApplicationIdNotesRequestBodyLever
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# ID of the Lever user that will show up as having created the note. If not provided, defaults to the user associated with the OAuth token.
|
|
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::PostAtsApplicationsApplicationIdNotesRequestBodyLever
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Kombo::Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyLever
|
|
11
|
+
def perform_as(); end
|
|
12
|
+
def perform_as=(str_); end
|
|
13
|
+
end
|
data/lib/kombo/models/shared/postatsapplicationsapplicationidnotesrequestbody_remote_fields.rb
CHANGED
|
@@ -20,15 +20,18 @@ module Kombo
|
|
|
20
20
|
field :recruitee, Crystalline::Nilable.new(Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyRecruitee), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('recruitee') } }
|
|
21
21
|
# Bullhorn specific remote fields for the note.
|
|
22
22
|
field :bullhorn, Crystalline::Nilable.new(Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyBullhorn), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('bullhorn') } }
|
|
23
|
+
# Lever specific remote fields for the note.
|
|
24
|
+
field :lever, Crystalline::Nilable.new(Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyLever), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('lever') } }
|
|
23
25
|
# Workable specific remote fields for ATS actions.
|
|
24
26
|
field :workable, Crystalline::Nilable.new(Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyWorkable), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('workable') } }
|
|
25
27
|
|
|
26
|
-
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), workable: T.nilable(Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyWorkable)).void }
|
|
27
|
-
def initialize(teamtailor: nil, greenhouse: nil, recruitee: nil, bullhorn: nil, workable: nil)
|
|
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)
|
|
28
30
|
@teamtailor = teamtailor
|
|
29
31
|
@greenhouse = greenhouse
|
|
30
32
|
@recruitee = recruitee
|
|
31
33
|
@bullhorn = bullhorn
|
|
34
|
+
@lever = lever
|
|
32
35
|
@workable = workable
|
|
33
36
|
end
|
|
34
37
|
|
|
@@ -39,6 +42,7 @@ module Kombo
|
|
|
39
42
|
return false unless @greenhouse == other.greenhouse
|
|
40
43
|
return false unless @recruitee == other.recruitee
|
|
41
44
|
return false unless @bullhorn == other.bullhorn
|
|
45
|
+
return false unless @lever == other.lever
|
|
42
46
|
return false unless @workable == other.workable
|
|
43
47
|
true
|
|
44
48
|
end
|
data/lib/kombo/models/shared/postatsapplicationsapplicationidnotesrequestbody_remote_fields.rbi
CHANGED
|
@@ -16,6 +16,8 @@ class Kombo::Models::Shared::PostAtsApplicationsApplicationIdNotesRequestBodyRem
|
|
|
16
16
|
def recruitee=(str_); end
|
|
17
17
|
def bullhorn(); end
|
|
18
18
|
def bullhorn=(str_); end
|
|
19
|
+
def lever(); end
|
|
20
|
+
def lever=(str_); end
|
|
19
21
|
def workable(); end
|
|
20
22
|
def workable=(str_); end
|
|
21
23
|
end
|
|
@@ -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
|
+
# The consent decisions for the candidate. SmartRecruiters supports two consent models: 'Single' (use the `SINGLE` key) and 'Separated' (use `SMART_RECRUIT`, `SMART_CRM`, `SMART_MESSAGE_SMS`, and/or `SMART_MESSAGE_WHATSAPP` keys). When this field is provided, it takes precedence over the `gdpr_consent` field for the `consentDecisions` property. See: https://developers.smartrecruiters.com/docs/partners-post-an-application
|
|
11
|
+
class PostAtsCandidatesRequestBodyConsentDecisions
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
field :single, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('SINGLE') } }
|
|
17
|
+
|
|
18
|
+
field :smart_recruit, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('SMART_RECRUIT') } }
|
|
19
|
+
|
|
20
|
+
field :smart_crm, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('SMART_CRM') } }
|
|
21
|
+
|
|
22
|
+
field :smart_message_sms, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('SMART_MESSAGE_SMS') } }
|
|
23
|
+
|
|
24
|
+
field :smart_message_whatsapp, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('SMART_MESSAGE_WHATSAPP') } }
|
|
25
|
+
|
|
26
|
+
sig { params(single: T.nilable(T::Boolean), smart_recruit: T.nilable(T::Boolean), smart_crm: T.nilable(T::Boolean), smart_message_sms: T.nilable(T::Boolean), smart_message_whatsapp: T.nilable(T::Boolean)).void }
|
|
27
|
+
def initialize(single: nil, smart_recruit: nil, smart_crm: nil, smart_message_sms: nil, smart_message_whatsapp: nil)
|
|
28
|
+
@single = single
|
|
29
|
+
@smart_recruit = smart_recruit
|
|
30
|
+
@smart_crm = smart_crm
|
|
31
|
+
@smart_message_sms = smart_message_sms
|
|
32
|
+
@smart_message_whatsapp = smart_message_whatsapp
|
|
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 @single == other.single
|
|
39
|
+
return false unless @smart_recruit == other.smart_recruit
|
|
40
|
+
return false unless @smart_crm == other.smart_crm
|
|
41
|
+
return false unless @smart_message_sms == other.smart_message_sms
|
|
42
|
+
return false unless @smart_message_whatsapp == other.smart_message_whatsapp
|
|
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::PostAtsCandidatesRequestBodyConsentDecisions
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Kombo::Models::Shared::PostAtsCandidatesRequestBodyConsentDecisions
|
|
11
|
+
def single(); end
|
|
12
|
+
def single=(str_); end
|
|
13
|
+
def smart_recruit(); end
|
|
14
|
+
def smart_recruit=(str_); end
|
|
15
|
+
def smart_crm(); end
|
|
16
|
+
def smart_crm=(str_); end
|
|
17
|
+
def smart_message_sms(); end
|
|
18
|
+
def smart_message_sms=(str_); end
|
|
19
|
+
def smart_message_whatsapp(); end
|
|
20
|
+
def smart_message_whatsapp=(str_); end
|
|
21
|
+
end
|
|
@@ -14,16 +14,20 @@ module Kombo
|
|
|
14
14
|
|
|
15
15
|
# Fields that we will pass through to d.vinci's application object. This API is used: https://static.dvinci-easy.com/files/d.vinci%20application-apply-api.html#jobs__id__applyApi_post
|
|
16
16
|
field :application, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::Object)), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('application') } }
|
|
17
|
+
# Fields that we will pass through to d.vinci's candidate/application payload as top-level fields (e.g., dateOfBirth).
|
|
18
|
+
field :candidate, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::Object)), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('candidate') } }
|
|
17
19
|
|
|
18
|
-
sig { params(application: T.nilable(T::Hash[Symbol, ::Object])).void }
|
|
19
|
-
def initialize(application: nil)
|
|
20
|
+
sig { params(application: T.nilable(T::Hash[Symbol, ::Object]), candidate: T.nilable(T::Hash[Symbol, ::Object])).void }
|
|
21
|
+
def initialize(application: nil, candidate: nil)
|
|
20
22
|
@application = application
|
|
23
|
+
@candidate = candidate
|
|
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 @application == other.application
|
|
30
|
+
return false unless @candidate == other.candidate
|
|
27
31
|
true
|
|
28
32
|
end
|
|
29
33
|
end
|
|
@@ -48,6 +48,8 @@ module Kombo
|
|
|
48
48
|
field :avature, Crystalline::Nilable.new(Models::Shared::PostAtsCandidatesRequestBodyAvature), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('avature') } }
|
|
49
49
|
# Fields specific to Recruitee.
|
|
50
50
|
field :recruitee, Crystalline::Nilable.new(Models::Shared::PostAtsCandidatesRequestBodyRecruitee), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('recruitee') } }
|
|
51
|
+
# Fields specific to Rexx.
|
|
52
|
+
field :rexx, Crystalline::Nilable.new(Models::Shared::PostAtsCandidatesRequestBodyRexx), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('rexx') } }
|
|
51
53
|
# Fields specific to Abacus Umantis.
|
|
52
54
|
field :umantis, Crystalline::Nilable.new(Models::Shared::PostAtsCandidatesRequestBodyUmantis), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('umantis') } }
|
|
53
55
|
# Fields specific to P&I Loga.
|
|
@@ -57,8 +59,8 @@ module Kombo
|
|
|
57
59
|
# Fields specific to Coveto REST.
|
|
58
60
|
field :covetorest, Crystalline::Nilable.new(Models::Shared::PostAtsCandidatesRequestBodyCovetorest), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('covetorest') } }
|
|
59
61
|
|
|
60
|
-
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), 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 }
|
|
61
|
-
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, umantis: nil, piloga: nil, pinpoint: nil, covetorest: nil)
|
|
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)
|
|
62
64
|
@successfactors = successfactors
|
|
63
65
|
@personio = personio
|
|
64
66
|
@talentsoft = talentsoft
|
|
@@ -77,6 +79,7 @@ module Kombo
|
|
|
77
79
|
@jobylon = jobylon
|
|
78
80
|
@avature = avature
|
|
79
81
|
@recruitee = recruitee
|
|
82
|
+
@rexx = rexx
|
|
80
83
|
@umantis = umantis
|
|
81
84
|
@piloga = piloga
|
|
82
85
|
@pinpoint = pinpoint
|
|
@@ -104,6 +107,7 @@ module Kombo
|
|
|
104
107
|
return false unless @jobylon == other.jobylon
|
|
105
108
|
return false unless @avature == other.avature
|
|
106
109
|
return false unless @recruitee == other.recruitee
|
|
110
|
+
return false unless @rexx == other.rexx
|
|
107
111
|
return false unless @umantis == other.umantis
|
|
108
112
|
return false unless @piloga == other.piloga
|
|
109
113
|
return false unless @pinpoint == other.pinpoint
|
|
@@ -44,6 +44,8 @@ class Kombo::Models::Shared::PostAtsCandidatesRequestBodyRemoteFields
|
|
|
44
44
|
def avature=(str_); end
|
|
45
45
|
def recruitee(); end
|
|
46
46
|
def recruitee=(str_); end
|
|
47
|
+
def rexx(); end
|
|
48
|
+
def rexx=(str_); end
|
|
47
49
|
def umantis(); end
|
|
48
50
|
def umantis=(str_); end
|
|
49
51
|
def piloga(); 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 Rexx.
|
|
11
|
+
class PostAtsCandidatesRequestBodyRexx
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# Fields that we will pass through to Rexx's application form fields.
|
|
16
|
+
field :candidate, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::Object)), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('candidate') } }
|
|
17
|
+
|
|
18
|
+
sig { params(candidate: T.nilable(T::Hash[Symbol, ::Object])).void }
|
|
19
|
+
def initialize(candidate: nil)
|
|
20
|
+
@candidate = candidate
|
|
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 @candidate == other.candidate
|
|
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::PostAtsCandidatesRequestBodyRexx
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Kombo::Models::Shared::PostAtsCandidatesRequestBodyRexx
|
|
11
|
+
def candidate(); end
|
|
12
|
+
def candidate=(str_); end
|
|
13
|
+
end
|
|
@@ -22,12 +22,15 @@ module Kombo
|
|
|
22
22
|
field :candidate_without_questions, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::Object)), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('candidate_without_questions') } }
|
|
23
23
|
# Fields that we will pass through to the SmartRecruiters's `Candidate` object. This API is used: https://developers.smartrecruiters.com/reference/createcandidate-1
|
|
24
24
|
field :candidate, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::Object)), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('candidate') } }
|
|
25
|
+
# The consent decisions for the candidate. SmartRecruiters supports two consent models: 'Single' (use the `SINGLE` key) and 'Separated' (use `SMART_RECRUIT`, `SMART_CRM`, `SMART_MESSAGE_SMS`, and/or `SMART_MESSAGE_WHATSAPP` keys). When this field is provided, it takes precedence over the `gdpr_consent` field for the `consentDecisions` property. See: https://developers.smartrecruiters.com/docs/partners-post-an-application
|
|
26
|
+
field :consent_decisions, Crystalline::Nilable.new(Models::Shared::PostAtsCandidatesRequestBodyConsentDecisions), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('consent_decisions') } }
|
|
25
27
|
|
|
26
|
-
sig { params(candidate_with_questions: T.nilable(T::Hash[Symbol, ::Object]), candidate_without_questions: T.nilable(T::Hash[Symbol, ::Object]), candidate: T.nilable(T::Hash[Symbol, ::Object])).void }
|
|
27
|
-
def initialize(candidate_with_questions: nil, candidate_without_questions: nil, candidate: nil)
|
|
28
|
+
sig { params(candidate_with_questions: T.nilable(T::Hash[Symbol, ::Object]), candidate_without_questions: T.nilable(T::Hash[Symbol, ::Object]), candidate: T.nilable(T::Hash[Symbol, ::Object]), consent_decisions: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyConsentDecisions)).void }
|
|
29
|
+
def initialize(candidate_with_questions: nil, candidate_without_questions: nil, candidate: nil, consent_decisions: nil)
|
|
28
30
|
@candidate_with_questions = candidate_with_questions
|
|
29
31
|
@candidate_without_questions = candidate_without_questions
|
|
30
32
|
@candidate = candidate
|
|
33
|
+
@consent_decisions = consent_decisions
|
|
31
34
|
end
|
|
32
35
|
|
|
33
36
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
@@ -36,6 +39,7 @@ module Kombo
|
|
|
36
39
|
return false unless @candidate_with_questions == other.candidate_with_questions
|
|
37
40
|
return false unless @candidate_without_questions == other.candidate_without_questions
|
|
38
41
|
return false unless @candidate == other.candidate
|
|
42
|
+
return false unless @consent_decisions == other.consent_decisions
|
|
39
43
|
true
|
|
40
44
|
end
|
|
41
45
|
end
|