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.
- checksums.yaml +4 -4
- data/lib/kombo/ats.rb +322 -0
- data/lib/kombo/connect.rb +2 -1
- data/lib/kombo/general.rb +11 -1
- data/lib/kombo/hris.rb +322 -0
- data/lib/kombo/models/operations/getatsattachments_request.rb +74 -0
- data/lib/kombo/models/operations/getatsattachments_request.rbi +31 -0
- data/lib/kombo/models/operations/getatsattachments_response.rb +56 -0
- data/lib/kombo/models/operations/getatsattachments_response.rbi +19 -0
- data/lib/kombo/models/operations/getatsscorecards_request.rb +83 -0
- data/lib/kombo/models/operations/getatsscorecards_request.rbi +31 -0
- data/lib/kombo/models/operations/getatsscorecards_response.rb +56 -0
- data/lib/kombo/models/operations/getatsscorecards_response.rbi +19 -0
- data/lib/kombo/models/operations/gethrispayruns_request.rb +70 -0
- data/lib/kombo/models/operations/gethrispayruns_request.rbi +29 -0
- data/lib/kombo/models/operations/gethrispayruns_response.rb +56 -0
- data/lib/kombo/models/operations/gethrispayruns_response.rbi +19 -0
- data/lib/kombo/models/operations/gethrispayslips_request.rb +87 -0
- data/lib/kombo/models/operations/gethrispayslips_request.rbi +33 -0
- data/lib/kombo/models/operations/gethrispayslips_response.rb +56 -0
- data/lib/kombo/models/operations/gethrispayslips_response.rbi +19 -0
- data/lib/kombo/models/operations.rb +8 -0
- data/lib/kombo/models/shared/amount.rb +36 -0
- data/lib/kombo/models/shared/amount.rbi +15 -0
- data/lib/kombo/models/shared/change.rb +19 -0
- data/lib/kombo/models/shared/change.rbi +11 -0
- data/lib/kombo/models/shared/content_ref.rb +43 -0
- data/lib/kombo/models/shared/content_ref.rbi +17 -0
- data/lib/kombo/models/shared/employee.rb +57 -0
- data/lib/kombo/models/shared/employee.rbi +25 -0
- data/lib/kombo/models/shared/format_multiselect.rb +2 -2
- data/lib/kombo/models/shared/format_singleselect.rb +2 -2
- data/lib/kombo/models/shared/getatsattachmentspositiveresponse.rb +39 -0
- data/lib/kombo/models/shared/getatsattachmentspositiveresponse.rbi +15 -0
- data/lib/kombo/models/shared/getatsattachmentspositiveresponse_data.rb +36 -0
- data/lib/kombo/models/shared/getatsattachmentspositiveresponse_data.rbi +15 -0
- data/lib/kombo/models/shared/getatsattachmentspositiveresponse_result.rb +76 -0
- data/lib/kombo/models/shared/getatsattachmentspositiveresponse_result.rbi +33 -0
- data/lib/kombo/models/shared/getatsattachmentspositiveresponse_type.rb +20 -0
- data/lib/kombo/models/shared/getatsattachmentspositiveresponse_type.rbi +11 -0
- data/lib/kombo/models/shared/{option_1.rb → getatsjobspositiveresponse_option_1.rb} +1 -1
- data/lib/kombo/models/shared/{option_2.rbi → getatsjobspositiveresponse_option_1.rbi} +2 -2
- data/lib/kombo/models/shared/{option_2.rb → getatsjobspositiveresponse_option_2.rb} +1 -1
- data/lib/kombo/models/shared/getatsjobspositiveresponse_option_2.rbi +17 -0
- data/lib/kombo/models/shared/{author.rb → getatsnotespositiveresponse_author.rb} +1 -1
- data/lib/kombo/models/shared/{author.rbi → getatsnotespositiveresponse_author.rbi} +2 -2
- data/lib/kombo/models/shared/getatsnotespositiveresponse_result.rb +2 -2
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse.rb +39 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse.rbi +15 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_answer_1.rb +36 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_answer_1.rbi +15 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_answer_2.rb +36 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_answer_2.rbi +15 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_author.rb +48 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_author.rbi +21 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_data.rb +36 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_data.rbi +15 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_option_1.rb +36 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_option_1.rbi +15 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_option_2.rb +36 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_option_2.rbi +15 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_result.rb +80 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_result.rbi +35 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse.rb +39 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse.rbi +15 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse_data.rb +36 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse_data.rbi +15 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse_gross_pay.rb +36 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse_gross_pay.rbi +15 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse_net_pay.rb +36 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse_net_pay.rbi +15 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse_paid_amount.rb +36 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse_paid_amount.rbi +15 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse_result.rb +62 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse_result.rbi +27 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse_totals.rb +40 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse_totals.rbi +17 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse.rb +39 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse.rbi +15 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse_data.rb +36 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse_data.rbi +15 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse_gross_pay.rb +36 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse_gross_pay.rbi +15 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse_net_pay.rb +36 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse_net_pay.rbi +15 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse_paid_amount.rb +36 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse_paid_amount.rbi +15 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse_result.rb +62 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse_result.rbi +27 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse_totals.rb +40 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse_totals.rbi +17 -0
- data/lib/kombo/models/shared/integration.rb +44 -0
- data/lib/kombo/models/shared/integration.rbi +19 -0
- data/lib/kombo/models/shared/integration_tool.rb +4 -0
- data/lib/kombo/models/shared/issue.rb +56 -0
- data/lib/kombo/models/shared/issue.rbi +25 -0
- data/lib/kombo/models/shared/issuestatuschangedwebhookpayload.rb +40 -0
- data/lib/kombo/models/shared/issuestatuschangedwebhookpayload.rbi +17 -0
- data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_category.rb +21 -0
- data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_category.rbi +11 -0
- data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_data.rb +40 -0
- data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_data.rbi +17 -0
- data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_end_user.rb +40 -0
- data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_end_user.rbi +17 -0
- data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_status.rb +19 -0
- data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_status.rbi +11 -0
- data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_type.rb +18 -0
- data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_type.rbi +11 -0
- data/lib/kombo/models/shared/line_item.rb +44 -0
- data/lib/kombo/models/shared/{option_1.rbi → line_item.rbi} +6 -4
- data/lib/kombo/models/shared/name.rb +6 -0
- data/lib/kombo/models/shared/pay_run.rb +48 -0
- data/lib/kombo/models/shared/pay_run.rbi +21 -0
- data/lib/kombo/models/shared/postatscandidatesrequestbody_afas.rb +32 -0
- data/lib/kombo/models/shared/{afas.rbi → postatscandidatesrequestbody_afas.rbi} +2 -2
- data/lib/kombo/models/shared/postatscandidatesrequestbody_avature.rb +6 -2
- data/lib/kombo/models/shared/postatscandidatesrequestbody_avature.rbi +2 -0
- data/lib/kombo/models/shared/postatscandidatesrequestbody_custom_field.rb +48 -0
- data/lib/kombo/models/shared/postatscandidatesrequestbody_custom_field.rbi +21 -0
- data/lib/kombo/models/shared/postatscandidatesrequestbody_recruitcrm.rb +32 -0
- data/lib/kombo/models/shared/postatscandidatesrequestbody_recruitcrm.rbi +13 -0
- data/lib/kombo/models/shared/postatscandidatesrequestbody_remote_fields.rb +10 -2
- data/lib/kombo/models/shared/postatscandidatesrequestbody_remote_fields.rbi +4 -0
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_afas.rb +32 -0
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_afas.rbi +13 -0
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_avature.rb +6 -2
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_avature.rbi +2 -0
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_custom_field.rb +48 -0
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_custom_field.rbi +21 -0
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_recruitcrm.rb +32 -0
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_recruitcrm.rbi +13 -0
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_remote_fields.rb +10 -2
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_remote_fields.rbi +4 -0
- data/lib/kombo/models/shared/postconnectcreatelinkpositiveresponse_data.rb +6 -2
- data/lib/kombo/models/shared/postconnectcreatelinkpositiveresponse_data.rbi +2 -0
- data/lib/kombo/models/shared/postconnectcreatelinkrequestbody.rb +6 -2
- data/lib/kombo/models/shared/postconnectcreatelinkrequestbody.rbi +2 -0
- data/lib/kombo/models/shared/{afas.rb → posthrisemployeesemployeeiddocumentsrequestbody_afas.rb} +1 -1
- data/lib/kombo/models/shared/posthrisemployeesemployeeiddocumentsrequestbody_afas.rbi +13 -0
- data/lib/kombo/models/shared/posthrisemployeesemployeeiddocumentsrequestbody_remote_fields.rb +2 -2
- data/lib/kombo/models/shared/response.rb +27 -0
- data/lib/kombo/models/shared/response.rbi +11 -0
- data/lib/kombo/models/shared/result_boolean.rb +55 -0
- data/lib/kombo/models/shared/result_boolean.rbi +23 -0
- data/lib/kombo/models/shared/result_date.rb +55 -0
- data/lib/kombo/models/shared/result_date.rbi +23 -0
- data/lib/kombo/models/shared/result_multiselect.rb +59 -0
- data/lib/kombo/models/shared/result_multiselect.rbi +25 -0
- data/lib/kombo/models/shared/result_number.rb +55 -0
- data/lib/kombo/models/shared/result_number.rbi +23 -0
- data/lib/kombo/models/shared/result_singleselect.rb +59 -0
- data/lib/kombo/models/shared/result_singleselect.rbi +25 -0
- data/lib/kombo/models/shared/result_text.rb +55 -0
- data/lib/kombo/models/shared/result_text.rbi +23 -0
- data/lib/kombo/models/shared.rb +57 -4
- data/lib/kombo/models/webhooks/webhookissuestatuschangedwebhookpayload_request.rb +36 -0
- data/lib/kombo/models/webhooks/webhookissuestatuschangedwebhookpayload_request.rbi +15 -0
- data/lib/kombo/models/webhooks/webhookissuestatuschangedwebhookpayload_response.rb +40 -0
- data/lib/kombo/models/webhooks/webhookissuestatuschangedwebhookpayload_response.rbi +17 -0
- data/lib/kombo/models/webhooks.rb +2 -0
- data/lib/kombo/sdkconfiguration.rb +5 -3
- data/lib/kombo/utils/utils.rb +6 -2
- 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 PostAtsCandidatesRequestBodyCustomField
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# ID of the Recruit CRM candidate custom field (`GET /v1/custom-fields/candidates`).
|
|
16
|
+
field :field_id, ::Integer, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('field_id'), required: true } }
|
|
17
|
+
# Value to write. Dropdown and multiselect values must match a configured option. File fields take a direct download URL.
|
|
18
|
+
field :value, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('value'), required: true } }
|
|
19
|
+
# Entity the custom field belongs to, usually `candidate`.
|
|
20
|
+
field :entity_type, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('entity_type') } }
|
|
21
|
+
# Custom field name.
|
|
22
|
+
field :field_name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('field_name') } }
|
|
23
|
+
# Custom field type, for example `text`.
|
|
24
|
+
field :field_type, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('field_type') } }
|
|
25
|
+
|
|
26
|
+
sig { params(field_id: ::Integer, value: ::String, entity_type: T.nilable(::String), field_name: T.nilable(::String), field_type: T.nilable(::String)).void }
|
|
27
|
+
def initialize(field_id:, value:, entity_type: nil, field_name: nil, field_type: nil)
|
|
28
|
+
@field_id = field_id
|
|
29
|
+
@value = value
|
|
30
|
+
@entity_type = entity_type
|
|
31
|
+
@field_name = field_name
|
|
32
|
+
@field_type = field_type
|
|
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 @field_id == other.field_id
|
|
39
|
+
return false unless @value == other.value
|
|
40
|
+
return false unless @entity_type == other.entity_type
|
|
41
|
+
return false unless @field_name == other.field_name
|
|
42
|
+
return false unless @field_type == other.field_type
|
|
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::PostAtsCandidatesRequestBodyCustomField
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Kombo::Models::Shared::PostAtsCandidatesRequestBodyCustomField
|
|
11
|
+
def field_id(); end
|
|
12
|
+
def field_id=(str_); end
|
|
13
|
+
def value(); end
|
|
14
|
+
def value=(str_); end
|
|
15
|
+
def entity_type(); end
|
|
16
|
+
def entity_type=(str_); end
|
|
17
|
+
def field_name(); end
|
|
18
|
+
def field_name=(str_); end
|
|
19
|
+
def field_type(); end
|
|
20
|
+
def field_type=(str_); end
|
|
21
|
+
end
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Kombo
|
|
8
|
+
module Models
|
|
9
|
+
module Shared
|
|
10
|
+
# Fields specific to Recruit CRM.
|
|
11
|
+
class PostAtsCandidatesRequestBodyRecruitcrm
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# Candidate custom fields passed through to Recruit CRM's `custom_fields` array. A child field also needs its parent field in this array. See https://docs.recruitcrm.io/docs/rcrm-api-reference/ba451e2a3bd63-creates-a-new-candidate.
|
|
16
|
+
field :custom_fields, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::PostAtsCandidatesRequestBodyCustomField)), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('custom_fields') } }
|
|
17
|
+
|
|
18
|
+
sig { params(custom_fields: T.nilable(T::Array[Models::Shared::PostAtsCandidatesRequestBodyCustomField])).void }
|
|
19
|
+
def initialize(custom_fields: nil)
|
|
20
|
+
@custom_fields = custom_fields
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
24
|
+
def ==(other)
|
|
25
|
+
return false unless other.is_a? self.class
|
|
26
|
+
return false unless @custom_fields == other.custom_fields
|
|
27
|
+
true
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Kombo::Models::Shared::PostAtsCandidatesRequestBodyRecruitcrm
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Kombo::Models::Shared::PostAtsCandidatesRequestBodyRecruitcrm
|
|
11
|
+
def custom_fields(); end
|
|
12
|
+
def custom_fields=(str_); end
|
|
13
|
+
end
|
|
@@ -60,9 +60,13 @@ module Kombo
|
|
|
60
60
|
field :pinpoint, Crystalline::Nilable.new(Models::Shared::PostAtsCandidatesRequestBodyPinpoint), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('pinpoint') } }
|
|
61
61
|
# Fields specific to Coveto REST.
|
|
62
62
|
field :covetorest, Crystalline::Nilable.new(Models::Shared::PostAtsCandidatesRequestBodyCovetorest), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('covetorest') } }
|
|
63
|
+
# Fields specific to AFAS.
|
|
64
|
+
field :afas, Crystalline::Nilable.new(Models::Shared::PostAtsCandidatesRequestBodyAfas), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('afas') } }
|
|
65
|
+
# Fields specific to Recruit CRM.
|
|
66
|
+
field :recruitcrm, Crystalline::Nilable.new(Models::Shared::PostAtsCandidatesRequestBodyRecruitcrm), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('recruitcrm') } }
|
|
63
67
|
|
|
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)
|
|
68
|
+
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), afas: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyAfas), recruitcrm: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyRecruitcrm)).void }
|
|
69
|
+
def initialize(successfactors: nil, personio: nil, talentsoft: nil, teamtailor: nil, greenhouse: nil, greenhousev3: nil, lever: nil, workable: nil, workday: nil, zohorecruit: nil, bullhorn: nil, smartrecruiters: nil, talentadore: nil, guidecom: nil, dvinci: nil, hrworks: nil, jobylon: nil, avature: nil, recruitee: nil, rexx: nil, umantis: nil, piloga: nil, pinpoint: nil, covetorest: nil, afas: nil, recruitcrm: nil)
|
|
66
70
|
@successfactors = successfactors
|
|
67
71
|
@personio = personio
|
|
68
72
|
@talentsoft = talentsoft
|
|
@@ -87,6 +91,8 @@ module Kombo
|
|
|
87
91
|
@piloga = piloga
|
|
88
92
|
@pinpoint = pinpoint
|
|
89
93
|
@covetorest = covetorest
|
|
94
|
+
@afas = afas
|
|
95
|
+
@recruitcrm = recruitcrm
|
|
90
96
|
end
|
|
91
97
|
|
|
92
98
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
@@ -116,6 +122,8 @@ module Kombo
|
|
|
116
122
|
return false unless @piloga == other.piloga
|
|
117
123
|
return false unless @pinpoint == other.pinpoint
|
|
118
124
|
return false unless @covetorest == other.covetorest
|
|
125
|
+
return false unless @afas == other.afas
|
|
126
|
+
return false unless @recruitcrm == other.recruitcrm
|
|
119
127
|
true
|
|
120
128
|
end
|
|
121
129
|
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 AFAS.
|
|
11
|
+
class PostAtsJobsJobIdApplicationsRequestBodyAfas
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# Additional fields passed through to AFAS `HrCreateApplicant.Element.Fields`.
|
|
16
|
+
field :fields_, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::Object)), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('Fields') } }
|
|
17
|
+
|
|
18
|
+
sig { params(fields_: T.nilable(T::Hash[Symbol, ::Object])).void }
|
|
19
|
+
def initialize(fields_: nil)
|
|
20
|
+
@fields_ = fields_
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
24
|
+
def ==(other)
|
|
25
|
+
return false unless other.is_a? self.class
|
|
26
|
+
return false unless @fields_ == other.fields_
|
|
27
|
+
true
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Kombo::Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyAfas
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Kombo::Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyAfas
|
|
11
|
+
def fields_(); end
|
|
12
|
+
def fields_=(str_); end
|
|
13
|
+
end
|
|
@@ -12,17 +12,21 @@ module Kombo
|
|
|
12
12
|
extend T::Sig
|
|
13
13
|
include Crystalline::MetadataFields
|
|
14
14
|
|
|
15
|
+
# Fields that we will pass through to Avature's create person form (`POST /people`). Available fields depend on your Avature instance's People write configuration.
|
|
16
|
+
field :candidate, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::Object)), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('candidate') } }
|
|
15
17
|
|
|
16
18
|
field :workflow, Crystalline::Nilable.new(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyWorkflow), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('workflow') } }
|
|
17
19
|
|
|
18
|
-
sig { params(workflow: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyWorkflow)).void }
|
|
19
|
-
def initialize(workflow: nil)
|
|
20
|
+
sig { params(candidate: T.nilable(T::Hash[Symbol, ::Object]), workflow: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyWorkflow)).void }
|
|
21
|
+
def initialize(candidate: nil, workflow: nil)
|
|
22
|
+
@candidate = candidate
|
|
20
23
|
@workflow = workflow
|
|
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
|
|
29
|
+
return false unless @candidate == other.candidate
|
|
26
30
|
return false unless @workflow == other.workflow
|
|
27
31
|
true
|
|
28
32
|
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
|
+
|
|
11
|
+
class PostAtsJobsJobIdApplicationsRequestBodyCustomField
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# ID of the Recruit CRM candidate custom field (`GET /v1/custom-fields/candidates`).
|
|
16
|
+
field :field_id, ::Integer, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('field_id'), required: true } }
|
|
17
|
+
# Value to write. Dropdown and multiselect values must match a configured option. File fields take a direct download URL.
|
|
18
|
+
field :value, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('value'), required: true } }
|
|
19
|
+
# Entity the custom field belongs to, usually `candidate`.
|
|
20
|
+
field :entity_type, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('entity_type') } }
|
|
21
|
+
# Custom field name.
|
|
22
|
+
field :field_name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('field_name') } }
|
|
23
|
+
# Custom field type, for example `text`.
|
|
24
|
+
field :field_type, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('field_type') } }
|
|
25
|
+
|
|
26
|
+
sig { params(field_id: ::Integer, value: ::String, entity_type: T.nilable(::String), field_name: T.nilable(::String), field_type: T.nilable(::String)).void }
|
|
27
|
+
def initialize(field_id:, value:, entity_type: nil, field_name: nil, field_type: nil)
|
|
28
|
+
@field_id = field_id
|
|
29
|
+
@value = value
|
|
30
|
+
@entity_type = entity_type
|
|
31
|
+
@field_name = field_name
|
|
32
|
+
@field_type = field_type
|
|
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 @field_id == other.field_id
|
|
39
|
+
return false unless @value == other.value
|
|
40
|
+
return false unless @entity_type == other.entity_type
|
|
41
|
+
return false unless @field_name == other.field_name
|
|
42
|
+
return false unless @field_type == other.field_type
|
|
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::PostAtsJobsJobIdApplicationsRequestBodyCustomField
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Kombo::Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyCustomField
|
|
11
|
+
def field_id(); end
|
|
12
|
+
def field_id=(str_); end
|
|
13
|
+
def value(); end
|
|
14
|
+
def value=(str_); end
|
|
15
|
+
def entity_type(); end
|
|
16
|
+
def entity_type=(str_); end
|
|
17
|
+
def field_name(); end
|
|
18
|
+
def field_name=(str_); end
|
|
19
|
+
def field_type(); end
|
|
20
|
+
def field_type=(str_); end
|
|
21
|
+
end
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Kombo
|
|
8
|
+
module Models
|
|
9
|
+
module Shared
|
|
10
|
+
# Fields specific to Recruit CRM.
|
|
11
|
+
class PostAtsJobsJobIdApplicationsRequestBodyRecruitcrm
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# Candidate custom fields passed through to Recruit CRM's `custom_fields` array. A child field also needs its parent field in this array. See https://docs.recruitcrm.io/docs/rcrm-api-reference/ba451e2a3bd63-creates-a-new-candidate.
|
|
16
|
+
field :custom_fields, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyCustomField)), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('custom_fields') } }
|
|
17
|
+
|
|
18
|
+
sig { params(custom_fields: T.nilable(T::Array[Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyCustomField])).void }
|
|
19
|
+
def initialize(custom_fields: nil)
|
|
20
|
+
@custom_fields = custom_fields
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
24
|
+
def ==(other)
|
|
25
|
+
return false unless other.is_a? self.class
|
|
26
|
+
return false unless @custom_fields == other.custom_fields
|
|
27
|
+
true
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Kombo::Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyRecruitcrm
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Kombo::Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyRecruitcrm
|
|
11
|
+
def custom_fields(); end
|
|
12
|
+
def custom_fields=(str_); end
|
|
13
|
+
end
|
|
@@ -60,9 +60,13 @@ module Kombo
|
|
|
60
60
|
field :pinpoint, Crystalline::Nilable.new(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyPinpoint), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('pinpoint') } }
|
|
61
61
|
# Fields specific to Coveto REST.
|
|
62
62
|
field :covetorest, Crystalline::Nilable.new(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyCovetorest), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('covetorest') } }
|
|
63
|
+
# Fields specific to AFAS.
|
|
64
|
+
field :afas, Crystalline::Nilable.new(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyAfas), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('afas') } }
|
|
65
|
+
# Fields specific to Recruit CRM.
|
|
66
|
+
field :recruitcrm, Crystalline::Nilable.new(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyRecruitcrm), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('recruitcrm') } }
|
|
63
67
|
|
|
64
|
-
sig { params(successfactors: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodySuccessfactors), personio: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyPersonio), talentsoft: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyTalentsoft), teamtailor: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyTeamtailor), greenhouse: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyGreenhouse), greenhousev3: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyGreenhousev3), lever: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyLever), workable: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyWorkable), workday: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyWorkday), zohorecruit: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyZohorecruit), bullhorn: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyBullhorn), smartrecruiters: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodySmartrecruiters), talentadore: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyTalentadore), guidecom: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyGuidecom), dvinci: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyDvinci), hrworks: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyHrworks), jobylon: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyJobylon), avature: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyAvature), recruitee: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyRecruitee), rexx: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyRexx), umantis: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyUmantis), piloga: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyPiloga), pinpoint: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyPinpoint), covetorest: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyCovetorest)).void }
|
|
65
|
-
def initialize(successfactors: nil, personio: nil, talentsoft: nil, teamtailor: nil, greenhouse: nil, greenhousev3: nil, lever: nil, workable: nil, workday: nil, zohorecruit: nil, bullhorn: nil, smartrecruiters: nil, talentadore: nil, guidecom: nil, dvinci: nil, hrworks: nil, jobylon: nil, avature: nil, recruitee: nil, rexx: nil, umantis: nil, piloga: nil, pinpoint: nil, covetorest: nil)
|
|
68
|
+
sig { params(successfactors: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodySuccessfactors), personio: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyPersonio), talentsoft: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyTalentsoft), teamtailor: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyTeamtailor), greenhouse: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyGreenhouse), greenhousev3: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyGreenhousev3), lever: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyLever), workable: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyWorkable), workday: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyWorkday), zohorecruit: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyZohorecruit), bullhorn: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyBullhorn), smartrecruiters: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodySmartrecruiters), talentadore: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyTalentadore), guidecom: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyGuidecom), dvinci: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyDvinci), hrworks: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyHrworks), jobylon: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyJobylon), avature: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyAvature), recruitee: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyRecruitee), rexx: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyRexx), umantis: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyUmantis), piloga: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyPiloga), pinpoint: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyPinpoint), covetorest: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyCovetorest), afas: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyAfas), recruitcrm: T.nilable(Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyRecruitcrm)).void }
|
|
69
|
+
def initialize(successfactors: nil, personio: nil, talentsoft: nil, teamtailor: nil, greenhouse: nil, greenhousev3: nil, lever: nil, workable: nil, workday: nil, zohorecruit: nil, bullhorn: nil, smartrecruiters: nil, talentadore: nil, guidecom: nil, dvinci: nil, hrworks: nil, jobylon: nil, avature: nil, recruitee: nil, rexx: nil, umantis: nil, piloga: nil, pinpoint: nil, covetorest: nil, afas: nil, recruitcrm: nil)
|
|
66
70
|
@successfactors = successfactors
|
|
67
71
|
@personio = personio
|
|
68
72
|
@talentsoft = talentsoft
|
|
@@ -87,6 +91,8 @@ module Kombo
|
|
|
87
91
|
@piloga = piloga
|
|
88
92
|
@pinpoint = pinpoint
|
|
89
93
|
@covetorest = covetorest
|
|
94
|
+
@afas = afas
|
|
95
|
+
@recruitcrm = recruitcrm
|
|
90
96
|
end
|
|
91
97
|
|
|
92
98
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
@@ -116,6 +122,8 @@ module Kombo
|
|
|
116
122
|
return false unless @piloga == other.piloga
|
|
117
123
|
return false unless @pinpoint == other.pinpoint
|
|
118
124
|
return false unless @covetorest == other.covetorest
|
|
125
|
+
return false unless @afas == other.afas
|
|
126
|
+
return false unless @recruitcrm == other.recruitcrm
|
|
119
127
|
true
|
|
120
128
|
end
|
|
121
129
|
end
|
|
@@ -56,4 +56,8 @@ class Kombo::Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyRemoteFields
|
|
|
56
56
|
def pinpoint=(str_); end
|
|
57
57
|
def covetorest(); end
|
|
58
58
|
def covetorest=(str_); end
|
|
59
|
+
def afas(); end
|
|
60
|
+
def afas=(str_); end
|
|
61
|
+
def recruitcrm(); end
|
|
62
|
+
def recruitcrm=(str_); end
|
|
59
63
|
end
|
|
@@ -14,16 +14,20 @@ module Kombo
|
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
field :link, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('link'), required: true } }
|
|
17
|
+
# The allowlist IPs for this integration. Present when `enable_static_ips` is `true`.
|
|
18
|
+
field :static_ips, Crystalline::Nilable.new(Crystalline::Array.new(::String)), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('static_ips') } }
|
|
17
19
|
|
|
18
|
-
sig { params(link: ::String).void }
|
|
19
|
-
def initialize(link:)
|
|
20
|
+
sig { params(link: ::String, static_ips: T.nilable(T::Array[::String])).void }
|
|
21
|
+
def initialize(link:, static_ips: nil)
|
|
20
22
|
@link = link
|
|
23
|
+
@static_ips = static_ips
|
|
21
24
|
end
|
|
22
25
|
|
|
23
26
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
24
27
|
def ==(other)
|
|
25
28
|
return false unless other.is_a? self.class
|
|
26
29
|
return false unless @link == other.link
|
|
30
|
+
return false unless @static_ips == other.static_ips
|
|
27
31
|
true
|
|
28
32
|
end
|
|
29
33
|
end
|
|
@@ -30,6 +30,8 @@ module Kombo
|
|
|
30
30
|
field :enable_filtering, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('enable_filtering') } }
|
|
31
31
|
# Enable the [field mapping feature](https://docs.kombo.dev/hris/features/setup-flow/introduction#field-mapping) for this integration.
|
|
32
32
|
field :enable_field_mapping, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('enable_field_mapping') } }
|
|
33
|
+
# Enable [Static IPs](https://docs.kombo.dev/hris/guides/static-ips) for this integration so all API calls originate from a fixed, allowlistable set of IPs.
|
|
34
|
+
field :enable_static_ips, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('enable_static_ips') } }
|
|
33
35
|
# The type of link you want to create. `EMBEDDED` is for the [embedded flow](../guides/connect/embedded-flow) using the Kombo Connect SDK (these links are valid for 1 hour) and `MAGIC_LINK` is for [magic links](../guides/connect/magic-links) which you send out manually to customers (there are valid for 1 year).
|
|
34
36
|
#
|
|
35
37
|
# This defaults to `EMBEDDED`, which is our recommended method of implementing the connection flow for a seamless user experience.
|
|
@@ -37,8 +39,8 @@ module Kombo
|
|
|
37
39
|
# Language of the connection flow UI.
|
|
38
40
|
field :language, Crystalline::Nilable.new(Models::Shared::PostConnectCreateLinkRequestBodyLanguage), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('language'), 'decoder': ::Kombo::Utils.enum_from_string(Models::Shared::PostConnectCreateLinkRequestBodyLanguage, true) } }
|
|
39
41
|
|
|
40
|
-
sig { params(end_user_email: ::String, end_user_organization_name: ::String, end_user_origin_id: T.nilable(::String), remote_environment: T.nilable(::String), integration_category: T.nilable(Models::Shared::PostConnectCreateLinkRequestBodyIntegrationCategory), integration_tool: T.nilable(Models::Shared::IntegrationTool), scope_config_id: T.nilable(::String), enable_filtering: T.nilable(T::Boolean), enable_field_mapping: T.nilable(T::Boolean), link_type: T.nilable(Models::Shared::PostConnectCreateLinkRequestBodyLinkType), language: T.nilable(Models::Shared::PostConnectCreateLinkRequestBodyLanguage)).void }
|
|
41
|
-
def initialize(end_user_email:, end_user_organization_name:, end_user_origin_id: nil, remote_environment: nil, integration_category: Models::Shared::PostConnectCreateLinkRequestBodyIntegrationCategory::HRIS, integration_tool: nil, scope_config_id: nil, enable_filtering: false, enable_field_mapping: false, link_type: Models::Shared::PostConnectCreateLinkRequestBodyLinkType::EMBEDDED, language: Models::Shared::PostConnectCreateLinkRequestBodyLanguage::EN)
|
|
42
|
+
sig { params(end_user_email: ::String, end_user_organization_name: ::String, end_user_origin_id: T.nilable(::String), remote_environment: T.nilable(::String), integration_category: T.nilable(Models::Shared::PostConnectCreateLinkRequestBodyIntegrationCategory), integration_tool: T.nilable(Models::Shared::IntegrationTool), scope_config_id: T.nilable(::String), enable_filtering: T.nilable(T::Boolean), enable_field_mapping: T.nilable(T::Boolean), enable_static_ips: T.nilable(T::Boolean), link_type: T.nilable(Models::Shared::PostConnectCreateLinkRequestBodyLinkType), language: T.nilable(Models::Shared::PostConnectCreateLinkRequestBodyLanguage)).void }
|
|
43
|
+
def initialize(end_user_email:, end_user_organization_name:, end_user_origin_id: nil, remote_environment: nil, integration_category: Models::Shared::PostConnectCreateLinkRequestBodyIntegrationCategory::HRIS, integration_tool: nil, scope_config_id: nil, enable_filtering: false, enable_field_mapping: false, enable_static_ips: false, link_type: Models::Shared::PostConnectCreateLinkRequestBodyLinkType::EMBEDDED, language: Models::Shared::PostConnectCreateLinkRequestBodyLanguage::EN)
|
|
42
44
|
@end_user_email = end_user_email
|
|
43
45
|
@end_user_organization_name = end_user_organization_name
|
|
44
46
|
@end_user_origin_id = end_user_origin_id
|
|
@@ -48,6 +50,7 @@ module Kombo
|
|
|
48
50
|
@scope_config_id = scope_config_id
|
|
49
51
|
@enable_filtering = enable_filtering
|
|
50
52
|
@enable_field_mapping = enable_field_mapping
|
|
53
|
+
@enable_static_ips = enable_static_ips
|
|
51
54
|
@link_type = link_type
|
|
52
55
|
@language = language
|
|
53
56
|
end
|
|
@@ -64,6 +67,7 @@ module Kombo
|
|
|
64
67
|
return false unless @scope_config_id == other.scope_config_id
|
|
65
68
|
return false unless @enable_filtering == other.enable_filtering
|
|
66
69
|
return false unless @enable_field_mapping == other.enable_field_mapping
|
|
70
|
+
return false unless @enable_static_ips == other.enable_static_ips
|
|
67
71
|
return false unless @link_type == other.link_type
|
|
68
72
|
return false unless @language == other.language
|
|
69
73
|
true
|
|
@@ -26,6 +26,8 @@ class Kombo::Models::Shared::PostConnectCreateLinkRequestBody
|
|
|
26
26
|
def enable_filtering=(str_); end
|
|
27
27
|
def enable_field_mapping(); end
|
|
28
28
|
def enable_field_mapping=(str_); end
|
|
29
|
+
def enable_static_ips(); end
|
|
30
|
+
def enable_static_ips=(str_); end
|
|
29
31
|
def link_type(); end
|
|
30
32
|
def link_type=(str_); end
|
|
31
33
|
def language(); end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Kombo::Models::Shared::PostHrisEmployeesEmployeeIdDocumentsRequestBodyAfas
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Kombo::Models::Shared::PostHrisEmployeesEmployeeIdDocumentsRequestBodyAfas
|
|
11
|
+
def fields_(); end
|
|
12
|
+
def fields_=(str_); end
|
|
13
|
+
end
|
data/lib/kombo/models/shared/posthrisemployeesemployeeiddocumentsrequestbody_remote_fields.rb
CHANGED
|
@@ -13,9 +13,9 @@ module Kombo
|
|
|
13
13
|
include Crystalline::MetadataFields
|
|
14
14
|
|
|
15
15
|
# Fields specific to AFAS.
|
|
16
|
-
field :afas, Crystalline::Nilable.new(Models::Shared::
|
|
16
|
+
field :afas, Crystalline::Nilable.new(Models::Shared::PostHrisEmployeesEmployeeIdDocumentsRequestBodyAfas), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('afas') } }
|
|
17
17
|
|
|
18
|
-
sig { params(afas: T.nilable(Models::Shared::
|
|
18
|
+
sig { params(afas: T.nilable(Models::Shared::PostHrisEmployeesEmployeeIdDocumentsRequestBodyAfas)).void }
|
|
19
19
|
def initialize(afas: nil)
|
|
20
20
|
@afas = afas
|
|
21
21
|
end
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Kombo
|
|
8
|
+
module Models
|
|
9
|
+
module Shared
|
|
10
|
+
|
|
11
|
+
class Response
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
def initialize; end
|
|
18
|
+
|
|
19
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
20
|
+
def ==(other)
|
|
21
|
+
return false unless other.is_a? self.class
|
|
22
|
+
true
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Kombo
|
|
8
|
+
module Models
|
|
9
|
+
module Shared
|
|
10
|
+
|
|
11
|
+
class ResultBoolean
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# The question or attribute being assessed, e.g. "Willingness to travel".
|
|
16
|
+
field :label, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('label'), required: true } }
|
|
17
|
+
# ID of the question in the connected ATS. `null` when the ATS keeps the headline rating or summary outside the rubric.
|
|
18
|
+
field :remote_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('remote_id'), required: true } }
|
|
19
|
+
# Guidance the ATS shows the interviewer below the question, e.g. "1 is poor, 4 is great".
|
|
20
|
+
field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('description'), required: true } }
|
|
21
|
+
# Whether the ATS marked this question mandatory.
|
|
22
|
+
field :required, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('required'), required: true } }
|
|
23
|
+
|
|
24
|
+
field :type, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('type'), required: true } }
|
|
25
|
+
# The yes/no the interviewer picked.
|
|
26
|
+
field :answer, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('answer'), required: true } }
|
|
27
|
+
|
|
28
|
+
sig { params(label: ::String, remote_id: T.nilable(::String), description: T.nilable(::String), required: T.nilable(T::Boolean), type: ::String, answer: T.nilable(T::Boolean)).void }
|
|
29
|
+
def initialize(label:, remote_id: nil, description: nil, required: nil, type: 'BOOLEAN', answer: nil)
|
|
30
|
+
@label = label
|
|
31
|
+
@remote_id = remote_id
|
|
32
|
+
@description = description
|
|
33
|
+
@required = required
|
|
34
|
+
unless type == 'BOOLEAN'
|
|
35
|
+
raise ArgumentError, 'Invalid value for type'
|
|
36
|
+
end
|
|
37
|
+
@type = 'BOOLEAN'
|
|
38
|
+
@answer = answer
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
42
|
+
def ==(other)
|
|
43
|
+
return false unless other.is_a? self.class
|
|
44
|
+
return false unless @label == other.label
|
|
45
|
+
return false unless @remote_id == other.remote_id
|
|
46
|
+
return false unless @description == other.description
|
|
47
|
+
return false unless @required == other.required
|
|
48
|
+
return false unless @type == other.type
|
|
49
|
+
return false unless @answer == other.answer
|
|
50
|
+
true
|
|
51
|
+
end
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
end
|