kombo 1.1.3 → 1.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. checksums.yaml +4 -4
  2. data/lib/kombo/general.rb +6 -0
  3. data/lib/kombo/hris.rb +8 -3
  4. data/lib/kombo/models/operations/gethrisemployeesform_request.rb +6 -2
  5. data/lib/kombo/models/operations/gethrisemployeesform_request.rbi +2 -0
  6. data/lib/kombo/models/shared/assess_candidate_data.rb +32 -0
  7. data/lib/kombo/models/shared/assess_candidate_data.rbi +13 -0
  8. data/lib/kombo/models/shared/assess_candidate_test_result_data.rb +32 -0
  9. data/lib/kombo/models/shared/assess_candidate_test_result_data.rbi +13 -0
  10. data/lib/kombo/models/shared/assessment_test_status_reference.rb +32 -0
  11. data/lib/kombo/models/shared/assessment_test_status_reference.rbi +13 -0
  12. data/lib/kombo/models/shared/candidate_assessment_data.rb +32 -0
  13. data/lib/kombo/models/shared/candidate_assessment_data.rbi +13 -0
  14. data/lib/kombo/models/shared/integration_tool.rb +3 -1
  15. data/lib/kombo/models/shared/kombohriserror_code.rb +1 -0
  16. data/lib/kombo/models/shared/postatscandidatesrequestbody_covetorest_candidate.rb +6 -2
  17. data/lib/kombo/models/shared/postatscandidatesrequestbody_covetorest_candidate.rbi +2 -0
  18. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_covetorest_candidate.rb +6 -2
  19. data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_covetorest_candidate.rbi +2 -0
  20. data/lib/kombo/models/shared/posthrisemployeesformrequestbody.rb +6 -2
  21. data/lib/kombo/models/shared/posthrisemployeesformrequestbody.rbi +2 -0
  22. data/lib/kombo/models/shared/putassessmentordersassessmentorderidresultrequestbody_remote_fields.rb +6 -2
  23. data/lib/kombo/models/shared/putassessmentordersassessmentorderidresultrequestbody_remote_fields.rbi +2 -0
  24. data/lib/kombo/models/shared/putassessmentordersassessmentorderidresultrequestbody_workday.rb +32 -0
  25. data/lib/kombo/models/shared/putassessmentordersassessmentorderidresultrequestbody_workday.rbi +13 -0
  26. data/lib/kombo/models/shared.rb +5 -0
  27. data/lib/kombo/sdkconfiguration.rb +2 -2
  28. metadata +12 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 24d81ffc145933d397ab482906e43662262d3fa5d5049f575ee85294180c0563
4
- data.tar.gz: 650ed96f7a2dfba4dc9e3ccf6101e46c777bcaa17d471ca170596a7bddde78d8
3
+ metadata.gz: f7e7c1bb39f82aa036bef045d24460655cdea148819ba24c2293a67a189ed53d
4
+ data.tar.gz: f39d1aa4f5cf90de344b460a76d9ff93eb4e0e2619793646d74a3febd70f3db8
5
5
  SHA512:
6
- metadata.gz: 474d0515c4bcbf72162f8f78fd00bf38809376a6ca60ee63dadd0f2623a4638f4f379d91361ddbd10fd65cfab0f28872c90c08aa0df9f14e7dcf967be891e64e
7
- data.tar.gz: 8144d5aea0bf152fe48446f1f3f7d3d10ca46eef8369a18a27e58053a41206b42b7dac0cde40815d47ae182c4fe928d6e88877f565c6c24992b3296067560e33
6
+ metadata.gz: b4f25f9957ed638c3a84fd251859a9588f18946b6a421f13553f34f834e024a2b9cdf34ba90da76a4e1a58332c9a248a20c6066749b9655be669f02be73d8749
7
+ data.tar.gz: 127f18762867242b07f79b6ea774915d3b15289644f1f5ac6c39573fe4adc6268345af42d53a4cdd1020fe03525b4bb5d6813f65e3770bfeaaaa42400235ece2
data/lib/kombo/general.rb CHANGED
@@ -321,8 +321,10 @@ module Kombo
321
321
  # |CEGID TalentSoft FrontOffice|`talentsoft/v2`|Cegid Talentsoft Recruiting FrontOffice [API](https://developers.cegid.com/api-details). We automatically authenticate all requests using the provided credentials and use `https://\{domain\}/api/v2` as the base URL.|
322
322
  # |Ceipal|`ceipal/v1`|We use `https://api.ceipal.com/v1` as the base URL. Find the official docs [here](https://developer.ceipal.com/ceipal-ats-version-one/ceipal-ats-v1-api-reference).|
323
323
  # |Cezanne HR|`cezannehr/dataservice`|[CezanneHR's v7 dataservice API](https://api.cezannehr.com/).We automatically authenticate all requests and use the base URL `https://subdomain.cezanneondemand.com/cezanneondemand/v7/dataservice.svc`|
324
+ # |Compleet (Persy)|`compleetpersy/api`|Compleet Persy [REST API](https://persy-api.refined.site/space/PAPI/450166808/Requirements+Jobfeed+%2F+Anforderungen+f%C3%BCr+Jobfeeds). We automatically authenticate all requests and use `https://www.germanpersonnel.de/persy/api/v1` as the base URL.|
324
325
  # |Compleet|`compleetpitcher/pitcher`|Compleet's Pitcher API. We automatically authenticate all requests and use the configured base URL.|
325
326
  # |Connexys By Bullhorn|`connexys/api`|[Connexy's API](https://api.conexsys.com/client/v2/docs/#section/Overview). We automatically authenticate all requests and use `https://\{connexys_domain\}/` as the base URL.|
327
+ # |Cornerstone OnDemand|`cornerstoneondemand/core-hr`|Cornerstone's [Core HR API](https://csod.dev/reference/core-hr/). We automatically authenticate all requests using the client ID and secret and use `https://\{your_domain\}.csod.com/services/api` as the base URL.|
326
328
  # |Cornerstone OnDemand|`cornerstoneondemand/learning`|Cornerstone's [Learning API](https://csod.dev/reference/learning/). We automatically authenticate all requests using the client ID and secret and use `https://\{your_domain\}.csod.com/services/api` as the base URL.|
327
329
  # |Cornerstone OnDemand|`cornerstoneondemand/recruiting`|Cornerstone's [Recruiting API](https://csod.dev/reference/recruiting/). We automatically authenticate all requests using the client ID and secret and use `https://\{your_domain\}.csod.com/services/api` as the base URL.|
328
330
  # |Cornerstone TalentLink|`cornerstonetalentlink/apply`|Cornerstone TalentLink's Apply API. We automatically authenticate all requests using the provided credentials and API key, and use `https://apiproxy.shared.lumessetalentlink.com/apply` as the base URL.|
@@ -355,10 +357,13 @@ module Kombo
355
357
  # |Gem|`gem/api`|Gem's [ATS API](https://api.gem.com/ats/v0/reference) We automatically authenticate all requests.|
356
358
  # |Google Workspace|`googleworkspace/admin`|[Googles's API](https://developers.google.com/admin-sdk/directory/reference/rest). We automatically authenticate all requests and use 'https://admin.googleapis.com' as the base URL.|
357
359
  # |Google Workspace|`googleworkspace/people`|[Googles's API](https://developers.google.com/people/api/rest). We automatically authenticate all requests and use 'https://people.googleapis.com' as the base URL.|
360
+ # |Greenhouse (V1)|`greenhouse/harvest-v2`|Greenhouse [Harvest API v2](https://developers.greenhouse.io/harvest.html). We automatically authenticate all requests using the API key and use `https://harvest.greenhouse.io/v2` as the base URL.|
361
+ # |Greenhouse (V1)|`greenhouse/harvest`|Greenhouse [Harvest API v1](https://developers.greenhouse.io/harvest.html). We automatically authenticate all requests using the API key and use `https://harvest.greenhouse.io/v1` as the base URL.|
358
362
  # |Greenhouse (V3)|`greenhousev3/harvestv3`|We use `https://harvest.greenhouse.io/v3` as the base URL. Find the official docs [here](https://harvestdocs.greenhouse.io/reference/).|
359
363
  # |Greenhouse Job Board|`greenhousejobboard/boards-api`|[Greenhouse Job Board API](https://developers.greenhouse.io/job-board). We automatically authenticate all requests and use 'https://boards-api.greenhouse.io/v1/boards/\{job_board_token\}' as the base URL. Optionally, you can provide a custom job_board_token to use a different job board.|
360
364
  # |Greenhouse|`greenhouse/harvest-v2`|Greenhouse [Harvest API v2](https://developers.greenhouse.io/harvest.html). We automatically authenticate all requests using the API key and use `https://harvest.greenhouse.io/v2` as the base URL.|
361
365
  # |Greenhouse|`greenhouse/harvest`|Greenhouse [Harvest API v1](https://developers.greenhouse.io/harvest.html). We automatically authenticate all requests using the API key and use `https://harvest.greenhouse.io/v1` as the base URL.|
366
+ # |Greenhouse|`greenhouse/harvestv3`|We use `https://harvest.greenhouse.io/v3` as the base URL. Find the official docs [here](https://harvestdocs.greenhouse.io/reference/).|
362
367
  # |GuideCom|`guidecom/api`|GuideCom's API. We automatically authenticate all requests and use the configured API base URL.|
363
368
  # |Gusto|`gusto/v1`|[Gusto API](https://docs.gusto.com/app-integrations/docs/introduction). We automatically authenticate all requests with OAuth and use `\{api_base_url\}/v1` as the base URL (`https://api.gusto.com/v1` in production, `https://api.gusto-demo.com/v1` in development).|
364
369
  # |Hailey HR|`haileyhr/api`|Hailey HR's [API](https://api.haileyhr.app/docs/index.html). We automatically authenticate all requests using the provided credentials and use `https://api.haileyhr.app` as the base URL. Connections created against the `DEMO` remote environment are routed to `https://api.demo.haileyhr.app` instead.|
@@ -379,6 +384,7 @@ module Kombo
379
384
  # |Insperity|`insperity/api`|Insperity [APIs](https://developer.insperity.com/) We automatically authenticate all requests and use `https://api.insperity.com` as the base URL. For staging environments, we use `https://apistage.insperity.com`. Note that all requests require the company ID to be specified in the path or body.|
380
385
  # |IRIS Cascade|`iriscascade/v2`|IRIS Cascade HR [API](https://swagger.hrapi.co.uk/). We automatically authenticate all requests using the provided credentials and use `https://api.iris.co.uk/hr/v2` as the base URL.|
381
386
  # |JazzHR|`jazzhr/v1`|[JazzHR's v1 API](https://www.resumatorapi.com/v1/#!`).We automatically authenticate all requests and use "https://api.resumatorapi.com/v1/" as the base URL.|
387
+ # |JobAdder|`jobadder/api`|We use `https://api.jobadder.com/v2` as the base URL. Find the official docs [here](https://api.jobadder.com/v2/docs).|
382
388
  # |JobDiva|`jobdiva/api`|We automatically authenticate all requests and use `https://api.jobdiva.com` as the base URL.|
383
389
  # |Jobvite|`jobvite/api`|We automatically authenticate all requests and use 'https://api.jobvite.com/api/v2' as the base URL.|
384
390
  # |Jobvite|`jobvite/v2`|We use `https://api.jobvite.com/api/v2` as the base URL. Find the official docs [here](https://help.jobvite.com/hc/en-us/articles/8870636608925-Jobvite-API).|
data/lib/kombo/hris.rb CHANGED
@@ -207,12 +207,13 @@ module Kombo
207
207
  end
208
208
 
209
209
 
210
- sig { params(integration_id: T.nilable(::String), timeout_ms: T.nilable(Integer)).returns(Models::Operations::GetHrisEmployeesFormResponse) }
211
- def get_employee_form(integration_id: nil, timeout_ms: nil)
210
+ sig { params(integration_id: T.nilable(::String), staffing_entity_id: T.nilable(::String), timeout_ms: T.nilable(Integer)).returns(Models::Operations::GetHrisEmployeesFormResponse) }
211
+ def get_employee_form(integration_id: nil, staffing_entity_id: nil, timeout_ms: nil)
212
212
  # get_employee_form - Get employee form
213
213
  # Get the form for creating an employee. This form can be rendered dynamically on your frontend to allow your customers to create employees in their HRIS.
214
214
  #
215
215
  # Follow our [create employee guide here](/hris/features/create-employee) to learn how this form is generated and how you can use it.
216
+ # The usage and impact of the staffing_entity_id parameter is described in the our [Create Employee Form with Staffing Entities guide](/hris/implementation-guide/staffing-entities-in-create-employee).
216
217
  #
217
218
  # ### Example Form
218
219
  # ```json
@@ -289,13 +290,15 @@ module Kombo
289
290
  # }
290
291
  # ```
291
292
  request = Models::Operations::GetHrisEmployeesFormRequest.new(
292
- integration_id: integration_id
293
+ integration_id: integration_id,
294
+ staffing_entity_id: staffing_entity_id
293
295
  )
294
296
  url, params = @sdk_configuration.get_server_details
295
297
  base_url = Utils.template_url(url, params)
296
298
  url = "#{base_url}/hris/employees/form"
297
299
  headers = Utils.get_headers(request, @sdk_configuration.globals)
298
300
  headers = T.cast(headers, T::Hash[String, String])
301
+ query_params = Utils.get_query_params(Models::Operations::GetHrisEmployeesFormRequest, request, nil, @sdk_configuration.globals)
299
302
  headers['Accept'] = 'application/json'
300
303
  headers['user-agent'] = @sdk_configuration.user_agent
301
304
 
@@ -323,6 +326,7 @@ module Kombo
323
326
  http_response = T.must(connection).get(url) do |req|
324
327
  req.headers.merge!(headers)
325
328
  req.options.timeout = timeout unless timeout.nil?
329
+ req.params = query_params
326
330
  Utils.configure_request_security(req, security)
327
331
 
328
332
  @sdk_configuration.hooks.before_request(
@@ -412,6 +416,7 @@ module Kombo
412
416
  #
413
417
  # ```json
414
418
  # {
419
+ # "staffing_entity_id": "26vafvWSRmbhNcxJYqjCzuJg",
415
420
  # "properties": {
416
421
  # "firstName": "John",
417
422
  # "startDate": "2025-01-01",
@@ -14,16 +14,20 @@ module Kombo
14
14
 
15
15
  # ID of the integration you want to interact with.
16
16
  field :integration_id, Crystalline::Nilable.new(::String), { 'header': { 'field_name': 'X-Integration-Id', 'style': 'simple', 'explode': false } }
17
+ # GET /hris/employees/form Parameter
18
+ field :staffing_entity_id, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'staffing_entity_id', 'style': 'form', 'explode': true } }
17
19
 
18
- sig { params(integration_id: T.nilable(::String)).void }
19
- def initialize(integration_id: nil)
20
+ sig { params(integration_id: T.nilable(::String), staffing_entity_id: T.nilable(::String)).void }
21
+ def initialize(integration_id: nil, staffing_entity_id: nil)
20
22
  @integration_id = integration_id
23
+ @staffing_entity_id = staffing_entity_id
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 @integration_id == other.integration_id
30
+ return false unless @staffing_entity_id == other.staffing_entity_id
27
31
  true
28
32
  end
29
33
  end
@@ -10,4 +10,6 @@ end
10
10
  class Kombo::Models::Operations::GetHrisEmployeesFormRequest
11
11
  def integration_id(); end
12
12
  def integration_id=(str_); end
13
+ def staffing_entity_id(); end
14
+ def staffing_entity_id=(str_); end
13
15
  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
+ # References to the Candidate Assessment to be created or modified along with the data to be used in the creation or modification.
11
+ class AssessCandidateData
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # The data used to create or modify a Candidate Assessment.
16
+ field :candidate_assessment_data, Crystalline::Nilable.new(Models::Shared::CandidateAssessmentData), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('Candidate_Assessment_Data') } }
17
+
18
+ sig { params(candidate_assessment_data: T.nilable(Models::Shared::CandidateAssessmentData)).void }
19
+ def initialize(candidate_assessment_data: nil)
20
+ @candidate_assessment_data = candidate_assessment_data
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_assessment_data == other.candidate_assessment_data
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::AssessCandidateData
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::AssessCandidateData
11
+ def candidate_assessment_data(); end
12
+ def candidate_assessment_data=(str_); end
13
+ end
@@ -0,0 +1,32 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Kombo
8
+ module Models
9
+ module Shared
10
+ # Information on a set of Assessment Test Results used in concert with the Candidate Assessment.
11
+ class AssessCandidateTestResultData
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # A reference to the tenant supplied status for this Assessment Test Result. For example, if the test outcome was satisfactory or not.
16
+ field :assessment_test_status_reference, Crystalline::Nilable.new(Models::Shared::AssessmentTestStatusReference), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('Assessment_Test_Status_Reference') } }
17
+
18
+ sig { params(assessment_test_status_reference: T.nilable(Models::Shared::AssessmentTestStatusReference)).void }
19
+ def initialize(assessment_test_status_reference: nil)
20
+ @assessment_test_status_reference = assessment_test_status_reference
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 @assessment_test_status_reference == other.assessment_test_status_reference
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::AssessCandidateTestResultData
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::AssessCandidateTestResultData
11
+ def assessment_test_status_reference(); end
12
+ def assessment_test_status_reference=(str_); end
13
+ end
@@ -0,0 +1,32 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Kombo
8
+ module Models
9
+ module Shared
10
+ # A reference to the tenant supplied status for this Assessment Test Result. For example, if the test outcome was satisfactory or not.
11
+ class AssessmentTestStatusReference
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+
16
+ field :assessment_status_id, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('Assessment_Status_ID'), required: true } }
17
+
18
+ sig { params(assessment_status_id: ::String).void }
19
+ def initialize(assessment_status_id:)
20
+ @assessment_status_id = assessment_status_id
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 @assessment_status_id == other.assessment_status_id
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::AssessmentTestStatusReference
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::AssessmentTestStatusReference
11
+ def assessment_status_id(); end
12
+ def assessment_status_id=(str_); end
13
+ end
@@ -0,0 +1,32 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Kombo
8
+ module Models
9
+ module Shared
10
+ # The data used to create or modify a Candidate Assessment.
11
+ class CandidateAssessmentData
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # Information on a set of Assessment Test Results used in concert with the Candidate Assessment.
16
+ field :assess_candidate_test_result_data, Crystalline::Nilable.new(Models::Shared::AssessCandidateTestResultData), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('Assess_Candidate_Test_Result_Data') } }
17
+
18
+ sig { params(assess_candidate_test_result_data: T.nilable(Models::Shared::AssessCandidateTestResultData)).void }
19
+ def initialize(assess_candidate_test_result_data: nil)
20
+ @assess_candidate_test_result_data = assess_candidate_test_result_data
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 @assess_candidate_test_result_data == other.assess_candidate_test_result_data
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::CandidateAssessmentData
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::CandidateAssessmentData
11
+ def assess_candidate_test_result_data(); end
12
+ def assess_candidate_test_result_data=(str_); end
13
+ end
@@ -89,6 +89,7 @@ module Kombo
89
89
  HROFFICE = new('hroffice')
90
90
  TALENTCLUE = new('talentclue')
91
91
  INRECRUITING = new('inrecruiting')
92
+ JOBADDER = new('jobadder')
92
93
  UBEEO = new('ubeeo')
93
94
  CONNEXYS = new('connexys')
94
95
  HR4YOU = new('hr4you')
@@ -96,8 +97,9 @@ module Kombo
96
97
  ZVOOVERECRUIT = new('zvooverecruit')
97
98
  ODOO = new('odoo')
98
99
  COMEET = new('comeet')
99
- COMPLEET = new('compleet')
100
100
  COMPLEETPITCHER = new('compleetpitcher')
101
+ COMPLEETPERSY = new('compleetpersy')
102
+ COMPLEET = new('compleet')
101
103
  GEM = new('gem')
102
104
  LAURA = new('laura')
103
105
  COVETOREST = new('covetorest')
@@ -34,6 +34,7 @@ module Kombo
34
34
  REMOTE_RATE_LIMIT_EXCEEDED = new('REMOTE.RATE_LIMIT_EXCEEDED')
35
35
  REMOTE_INPUT_INVALID = new('REMOTE.INPUT_INVALID')
36
36
  REMOTE_UNKNOWN_HTTP_ERROR = new('REMOTE.UNKNOWN_HTTP_ERROR')
37
+ HRIS_STAFFING_ENTITY_CLOSED = new('HRIS.STAFFING_ENTITY_CLOSED')
37
38
  HRIS_EMPLOYEE_ALREADY_EXISTS = new('HRIS.EMPLOYEE_ALREADY_EXISTS')
38
39
  end
39
40
  end
@@ -14,16 +14,20 @@ module Kombo
14
14
 
15
15
  # The mandant field for the candidate in Coveto.
16
16
  field :mandant, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('mandant') } }
17
+ # The numeric status ID to assign to the candidate on creation in Coveto. Refer to your Coveto `/bewerber-status` endpoint for available IDs.
18
+ field :status, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('status') } }
17
19
 
18
- sig { params(mandant: T.nilable(::Float)).void }
19
- def initialize(mandant: nil)
20
+ sig { params(mandant: T.nilable(::Float), status: T.nilable(::Integer)).void }
21
+ def initialize(mandant: nil, status: nil)
20
22
  @mandant = mandant
23
+ @status = status
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 @mandant == other.mandant
30
+ return false unless @status == other.status
27
31
  true
28
32
  end
29
33
  end
@@ -10,4 +10,6 @@ end
10
10
  class Kombo::Models::Shared::PostAtsCandidatesRequestBodyCovetorestCandidate
11
11
  def mandant(); end
12
12
  def mandant=(str_); end
13
+ def status(); end
14
+ def status=(str_); end
13
15
  end
@@ -14,16 +14,20 @@ module Kombo
14
14
 
15
15
  # The mandant field for the candidate in Coveto.
16
16
  field :mandant, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('mandant') } }
17
+ # The numeric status ID to assign to the candidate on creation in Coveto. Refer to your Coveto `/bewerber-status` endpoint for available IDs.
18
+ field :status, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('status') } }
17
19
 
18
- sig { params(mandant: T.nilable(::Float)).void }
19
- def initialize(mandant: nil)
20
+ sig { params(mandant: T.nilable(::Float), status: T.nilable(::Integer)).void }
21
+ def initialize(mandant: nil, status: nil)
20
22
  @mandant = mandant
23
+ @status = status
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 @mandant == other.mandant
30
+ return false unless @status == other.status
27
31
  true
28
32
  end
29
33
  end
@@ -10,4 +10,6 @@ end
10
10
  class Kombo::Models::Shared::PostAtsJobsJobIdApplicationsRequestBodyCovetorestCandidate
11
11
  def mandant(); end
12
12
  def mandant=(str_); end
13
+ def status(); end
14
+ def status=(str_); end
13
15
  end
@@ -15,15 +15,19 @@ module Kombo
15
15
 
16
16
  field :properties, Crystalline::Hash.new(Symbol, Crystalline::Union.new(::String, ::Float, Crystalline::Boolean.new, Crystalline::Hash.new(Symbol, Crystalline::Hash.new(Symbol, Object)), Crystalline::Array.new(Crystalline::Hash.new(Symbol, Object)))), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('properties'), required: true } }
17
17
 
18
- sig { params(properties: T::Hash[Symbol, T.any(::String, ::Float, T::Boolean, T::Hash[Symbol, T::Hash[Symbol, Object]], T::Array[T::Hash[Symbol, Object]])]).void }
19
- def initialize(properties:)
18
+ field :staffing_entity_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('staffing_entity_id') } }
19
+
20
+ sig { params(properties: T::Hash[Symbol, T.any(::String, ::Float, T::Boolean, T::Hash[Symbol, T::Hash[Symbol, Object]], T::Array[T::Hash[Symbol, Object]])], staffing_entity_id: T.nilable(::String)).void }
21
+ def initialize(properties:, staffing_entity_id: nil)
20
22
  @properties = properties
23
+ @staffing_entity_id = staffing_entity_id
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 @properties == other.properties
30
+ return false unless @staffing_entity_id == other.staffing_entity_id
27
31
  true
28
32
  end
29
33
  end
@@ -10,4 +10,6 @@ end
10
10
  class Kombo::Models::Shared::PostHrisEmployeesFormRequestBody
11
11
  def properties(); end
12
12
  def properties=(str_); end
13
+ def staffing_entity_id(); end
14
+ def staffing_entity_id=(str_); end
13
15
  end
@@ -16,11 +16,14 @@ module Kombo
16
16
  field :smartrecruiters, Crystalline::Nilable.new(Models::Shared::PutAssessmentOrdersAssessmentOrderIdResultRequestBodySmartrecruiters), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('smartrecruiters') } }
17
17
 
18
18
  field :recruitee, Crystalline::Nilable.new(Models::Shared::PutAssessmentOrdersAssessmentOrderIdResultRequestBodyRecruitee), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('recruitee') } }
19
+ # Fields specific to Workday's `Assess_Candidate` [operation](https://community.workday.com/sites/default/files/file-hosting/productionapi/Recruiting/v46.0/Assess_Candidate.html).
20
+ field :workday, Crystalline::Nilable.new(Models::Shared::PutAssessmentOrdersAssessmentOrderIdResultRequestBodyWorkday), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('workday') } }
19
21
 
20
- sig { params(smartrecruiters: T.nilable(Models::Shared::PutAssessmentOrdersAssessmentOrderIdResultRequestBodySmartrecruiters), recruitee: T.nilable(Models::Shared::PutAssessmentOrdersAssessmentOrderIdResultRequestBodyRecruitee)).void }
21
- def initialize(smartrecruiters: nil, recruitee: nil)
22
+ sig { params(smartrecruiters: T.nilable(Models::Shared::PutAssessmentOrdersAssessmentOrderIdResultRequestBodySmartrecruiters), recruitee: T.nilable(Models::Shared::PutAssessmentOrdersAssessmentOrderIdResultRequestBodyRecruitee), workday: T.nilable(Models::Shared::PutAssessmentOrdersAssessmentOrderIdResultRequestBodyWorkday)).void }
23
+ def initialize(smartrecruiters: nil, recruitee: nil, workday: nil)
22
24
  @smartrecruiters = smartrecruiters
23
25
  @recruitee = recruitee
26
+ @workday = workday
24
27
  end
25
28
 
26
29
  sig { params(other: T.untyped).returns(T::Boolean) }
@@ -28,6 +31,7 @@ module Kombo
28
31
  return false unless other.is_a? self.class
29
32
  return false unless @smartrecruiters == other.smartrecruiters
30
33
  return false unless @recruitee == other.recruitee
34
+ return false unless @workday == other.workday
31
35
  true
32
36
  end
33
37
  end
@@ -12,4 +12,6 @@ class Kombo::Models::Shared::PutAssessmentOrdersAssessmentOrderIdResultRequestBo
12
12
  def smartrecruiters=(str_); end
13
13
  def recruitee(); end
14
14
  def recruitee=(str_); end
15
+ def workday(); end
16
+ def workday=(str_); end
15
17
  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 Workday's `Assess_Candidate` [operation](https://community.workday.com/sites/default/files/file-hosting/productionapi/Recruiting/v46.0/Assess_Candidate.html).
11
+ class PutAssessmentOrdersAssessmentOrderIdResultRequestBodyWorkday
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # References to the Candidate Assessment to be created or modified along with the data to be used in the creation or modification.
16
+ field :assess_candidate_data, Crystalline::Nilable.new(Models::Shared::AssessCandidateData), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('Assess_Candidate_Data') } }
17
+
18
+ sig { params(assess_candidate_data: T.nilable(Models::Shared::AssessCandidateData)).void }
19
+ def initialize(assess_candidate_data: nil)
20
+ @assess_candidate_data = assess_candidate_data
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 @assess_candidate_data == other.assess_candidate_data
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::PutAssessmentOrdersAssessmentOrderIdResultRequestBodyWorkday
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Kombo::Models::Shared::PutAssessmentOrdersAssessmentOrderIdResultRequestBodyWorkday
11
+ def assess_candidate_data(); end
12
+ def assess_candidate_data=(str_); end
13
+ end
@@ -6,6 +6,8 @@
6
6
  module Kombo
7
7
  module Models
8
8
  module Shared
9
+ autoload :AssessCandidateData, 'kombo/models/shared/assess_candidate_data.rb'
10
+ autoload :AssessCandidateTestResultData, 'kombo/models/shared/assess_candidate_test_result_data.rb'
9
11
  autoload :AssessmentOrderReceivedWebhookPayload, 'kombo/models/shared/assessmentorderreceivedwebhookpayload.rb'
10
12
  autoload :AssessmentOrderReceivedWebhookPayloadApplication, 'kombo/models/shared/assessmentorderreceivedwebhookpayload_application.rb'
11
13
  autoload :AssessmentOrderReceivedWebhookPayloadCandidate, 'kombo/models/shared/assessmentorderreceivedwebhookpayload_candidate.rb'
@@ -16,6 +18,8 @@ module Kombo
16
18
  autoload :AssessmentOrderReceivedWebhookPayloadLocation, 'kombo/models/shared/assessmentorderreceivedwebhookpayload_location.rb'
17
19
  autoload :AssessmentOrderReceivedWebhookPayloadStatus, 'kombo/models/shared/assessmentorderreceivedwebhookpayload_status.rb'
18
20
  autoload :AssessmentOrderReceivedWebhookPayloadType, 'kombo/models/shared/assessmentorderreceivedwebhookpayload_type.rb'
21
+ autoload :AssessmentTestStatusReference, 'kombo/models/shared/assessment_test_status_reference.rb'
22
+ autoload :CandidateAssessmentData, 'kombo/models/shared/candidate_assessment_data.rb'
19
23
  autoload :ConnectionFlowFailedWebhookPayload, 'kombo/models/shared/connectionflowfailedwebhookpayload.rb'
20
24
  autoload :ConnectionFlowFailedWebhookPayloadData, 'kombo/models/shared/connectionflowfailedwebhookpayload_data.rb'
21
25
  autoload :ConnectionFlowFailedWebhookPayloadEndUser, 'kombo/models/shared/connectionflowfailedwebhookpayload_end_user.rb'
@@ -708,6 +712,7 @@ module Kombo
708
712
  autoload :PutAssessmentOrdersAssessmentOrderIdResultRequestBodyRemoteFields, 'kombo/models/shared/putassessmentordersassessmentorderidresultrequestbody_remote_fields.rb'
709
713
  autoload :PutAssessmentOrdersAssessmentOrderIdResultRequestBodySmartrecruiters, 'kombo/models/shared/putassessmentordersassessmentorderidresultrequestbody_smartrecruiters.rb'
710
714
  autoload :PutAssessmentOrdersAssessmentOrderIdResultRequestBodyStatus, 'kombo/models/shared/putassessmentordersassessmentorderidresultrequestbody_status.rb'
715
+ autoload :PutAssessmentOrdersAssessmentOrderIdResultRequestBodyWorkday, 'kombo/models/shared/putassessmentordersassessmentorderidresultrequestbody_workday.rb'
711
716
  autoload :PutAssessmentPackagesPositiveResponse, 'kombo/models/shared/putassessmentpackagespositiveresponse.rb'
712
717
  autoload :PutAssessmentPackagesPositiveResponseData, 'kombo/models/shared/putassessmentpackagespositiveresponse_data.rb'
713
718
  autoload :PutAssessmentPackagesPositiveResponseWarning, 'kombo/models/shared/putassessmentpackagespositiveresponse_warning.rb'
@@ -98,9 +98,9 @@ module Kombo
98
98
  @globals = globals.nil? ? {} : globals
99
99
  @language = 'ruby'
100
100
  @openapi_doc_version = '1.0.0'
101
- @sdk_version = '1.1.3'
101
+ @sdk_version = '1.1.4'
102
102
  @gen_version = '2.801.2'
103
- @user_agent = 'speakeasy-sdk/ruby 1.1.3 2.801.2 1.0.0 kombo'
103
+ @user_agent = 'speakeasy-sdk/ruby 1.1.4 2.801.2 1.0.0 kombo'
104
104
  end
105
105
 
106
106
  sig { returns([String, T::Hash[Symbol, String]]) }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kombo
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.3
4
+ version: 1.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kombo Technologies GmbH
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-05-12 00:00:00.000000000 Z
11
+ date: 2026-06-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: base64
@@ -540,6 +540,12 @@ files:
540
540
  - lib/kombo/models/shared.rb
541
541
  - lib/kombo/models/shared/a3innuvanomina.rb
542
542
  - lib/kombo/models/shared/a3innuvanomina.rbi
543
+ - lib/kombo/models/shared/assess_candidate_data.rb
544
+ - lib/kombo/models/shared/assess_candidate_data.rbi
545
+ - lib/kombo/models/shared/assess_candidate_test_result_data.rb
546
+ - lib/kombo/models/shared/assess_candidate_test_result_data.rbi
547
+ - lib/kombo/models/shared/assessment_test_status_reference.rb
548
+ - lib/kombo/models/shared/assessment_test_status_reference.rbi
543
549
  - lib/kombo/models/shared/assessmentorderreceivedwebhookpayload.rb
544
550
  - lib/kombo/models/shared/assessmentorderreceivedwebhookpayload.rbi
545
551
  - lib/kombo/models/shared/assessmentorderreceivedwebhookpayload_application.rb
@@ -576,6 +582,8 @@ files:
576
582
  - lib/kombo/models/shared/benefit_type_id.rbi
577
583
  - lib/kombo/models/shared/break_.rb
578
584
  - lib/kombo/models/shared/break_.rbi
585
+ - lib/kombo/models/shared/candidate_assessment_data.rb
586
+ - lib/kombo/models/shared/candidate_assessment_data.rbi
579
587
  - lib/kombo/models/shared/changed_model.rb
580
588
  - lib/kombo/models/shared/changed_model.rbi
581
589
  - lib/kombo/models/shared/connectionflowfailedwebhookpayload.rb
@@ -2074,6 +2082,8 @@ files:
2074
2082
  - lib/kombo/models/shared/putassessmentordersassessmentorderidresultrequestbody_smartrecruiters.rbi
2075
2083
  - lib/kombo/models/shared/putassessmentordersassessmentorderidresultrequestbody_status.rb
2076
2084
  - lib/kombo/models/shared/putassessmentordersassessmentorderidresultrequestbody_status.rbi
2085
+ - lib/kombo/models/shared/putassessmentordersassessmentorderidresultrequestbody_workday.rb
2086
+ - lib/kombo/models/shared/putassessmentordersassessmentorderidresultrequestbody_workday.rbi
2077
2087
  - lib/kombo/models/shared/putassessmentpackagespositiveresponse.rb
2078
2088
  - lib/kombo/models/shared/putassessmentpackagespositiveresponse.rbi
2079
2089
  - lib/kombo/models/shared/putassessmentpackagespositiveresponse_data.rb